【暴刷力扣】283. 移动零

283. 移动零

给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。

请注意 ,必须在不复制数组的情况下原地对数组进行操作。

示例 1:

输入: nums = [0,1,0,3,12]

输出: [1,3,12,0,0]

示例 2:

输入: nums = [0]

输出: [0]

提示:

1 <= nums.length <= 104

-231 <= nums[i] <= 231 - 1

进阶:你能尽量减少完成的操作次数吗?

代码

js 复制代码
var moveZeroes = function(nums) {
   let slow = 0, fast = 0
   for (;fast < nums.length; slow++, fast ++) {
    if (nums[slow] === 0) {
        while (nums[fast] === 0) {
            fast ++
        }
        if (nums[fast]) {
            [nums[fast], nums[slow]] = [nums[slow], nums[fast]]
        }
    }
   }
   return nums
};
相关推荐
mjhcsp4 分钟前
C++ A* 算法:启发式路径搜索的黄金标准
android·c++·算法
仰泳的熊猫20 分钟前
题目2281:蓝桥杯2018年第九届真题-次数差
数据结构·c++·算法·蓝桥杯
blackicexs25 分钟前
第九周第一天
数据结构·算法
小小怪75032 分钟前
C++中的代理模式高级应用
开发语言·c++·算法
hoiii18732 分钟前
MATLAB模拟ADS-B数据解码与信号处理整体流程
数据结构·matlab·信号处理
Dfreedom.38 分钟前
归一化技术全景指南
深度学习·算法·机器学习·归一化
Genevieve_xiao39 分钟前
【写给新人】在 vscode 中配置适用于算法竞赛背景的 c/c++
c语言·vscode·算法
TracyCoder1231 小时前
LeetCode Hot100(70/100)—— 322. 零钱兑换
算法·leetcode·职场和发展
2401_891482171 小时前
C++中的观察者模式
开发语言·c++·算法
沐雲小哥1 小时前
bevfomer算法嵌入的tricks
数码相机·算法