Skip to content

Commit

Permalink
LC-1470 C++ JavaScript accepted
Browse files Browse the repository at this point in the history
  • Loading branch information
davidyslu committed Aug 14, 2020
1 parent 4550a5c commit 514086b
Show file tree
Hide file tree
Showing 3 changed files with 73 additions and 0 deletions.
15 changes: 15 additions & 0 deletions LC-1470/LC-1470.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
#include <vector>

using namespace std;

class Solution {
public:
vector<int> shuffle(vector<int>& nums, int n) {
vector<int> result(2 * n);
for (int i = 0, j = n, k = 0; i < n && j < 2 * n && k < 2 * n; ++i, ++j, k += 2) {
result[k] = nums[i];
result[k + 1] = nums[j];
}
return result;
}
};
17 changes: 17 additions & 0 deletions LC-1470/LC-1470.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
/**
* @param {number[]} nums
* @param {number} n
* @return {number[]}
*/
var shuffle = function (nums, n) {
let result = [];
for (
let i = 0, j = n, k = 0;
i < n && j < 2 * n && k < 2 * n;
++i, ++j, k += 2
) {
result[k] = nums[i];
result[k + 1] = nums[j];
}
return result;
};
41 changes: 41 additions & 0 deletions LC-1470/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
# LC-1470 Shuffle the Array

Given the array `nums` consisting of 2n elements in the form `[x1,x2,...,xn,y1,y2,...,yn]`.

Return the array in the form `[x1,y1,x2,y2,...,xn,yn]`.

> * Difficulty: **EASY**
---
## Examples

```
Input: nums = [2,5,1,3,4,7], n = 3
Output: [2,3,5,4,1,7]
Explanation:
Since x1=2, x2=5, x3=1, y1=3, y2=4, y3=7 then the answer is [2,3,5,4,1,7].
```

```
Input: nums = [1,2,3,4,4,3,2,1], n = 4
Output: [1,4,2,3,3,2,4,1]
```

```
Input: nums = [1,1,2,2], n = 2
Output: [1,2,1,2]
```

---
## Notes

* `1 <= n <= 500`
* `nums.length == 2n`
* `1 <= nums[i] <= 10^3`

---
## Solutions

1. Extra-space
* Time complexity: $O(n)$
* Space complexity: $O(n)$

0 comments on commit 514086b

Please sign in to comment.