/** * @param {number[]}nums * @return {void}Do not return anything, modify nums in-place instead. */ var moveZeroes = function (nums) { let i = 0; let len = nums.length; while (i < len) { if (nums[i] === 0) { nums.splice(i, 1); nums.push(0); len--; } else { i++; } } };
左右排序右侧补 0
1 2 3 4 5 6 7 8 9 10 11 12
var moveZeroes = function (nums) { let start = 0; for (let i = 0; i < nums.length; i++) { if (nums[i] !== 0) { nums[start++] = nums[i]; } }
while (start < nums.length) { nums[start++] = 0; } };