难度级别:简单
给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。
输入: [0,1,0,3,12] 输出: [1,3,12,0,0]
必须在原数组上操作,不能拷贝额外的数组。 尽量减少操作次数。
通过双指针,当遍历到的元素不为0时,交换指针元素。
const moveZeroes = function(nums) {
let j = 0
for (let i = 0; i < nums.length; i++) {
if(nums[i] !== 0) {
let temp = nums[i];
[nums[i], nums[j++]] = [nums[j], temp]
}
}
};
题目来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/move-zeroes
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。