We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent dc04f48 commit d6e59ebCopy full SHA for d6e59eb
javascript/283-Move-Zeroes.js
@@ -1,16 +1,20 @@
1
/**
2
+ * 2 Pointer
3
+ * Time O(N) | Space O(1)
4
+ * https://leetcode.com/problems/move-zeroes/
5
* @param {number[]} nums
6
* @return {void} Do not return anything, modify nums in-place instead.
7
*/
- var moveZeroes = function(nums) {
- let pos = 0;
-
8
- for(let i in nums) {
9
- if(nums[i] !== 0) {
10
- let temp = nums[i];
11
- nums[i] = nums[pos];
12
- nums[pos] = temp;
13
- pos++;
+var moveZeroes = (nums) => {
+ let [ left, right ] = [ 0, 0 ];
+
+ while (right < nums.length) {
+ const canSwap = (nums[right] !== 0)
+ if (canSwap) {
14
+ [nums[left], nums[right]] = [nums[right], nums[left]];
15
+ left++;
16
}
17
18
+ right++;
19
20
};
0 commit comments