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

示例1:
输入: [0,1,0,3,12]
输出: [1,3,12,0,0]

说明:

  1. 必须在原数组上操作,不能拷贝额外的数组。
  2. 尽量减少操作次数。
/*** @param {number[]} nums* @return {void} Do not return anything, modify nums in-place instead.*/
var moveZeroes = function(nums) {};

个人解法

var moveZeroes = function(nums) {var length = nums.length;//遍历numsfor(var i = 0; i < length; i++){//如果第i个元素为0if(nums[i] === 0){//则将这个元素删除nums.splice(i , 1);//然后在nums后面加个0nums.push(0);//length--,因为最后这个0不用遍历length--;//i--,因为i这个位置的0被删除了,i+1位置的元素会成为新的i位置的元素,要判断这个新元素是否为0i--;}}return nums;
};

LeetCode(283)——移动零(JavaScript)相关推荐

  1. leetcode(283)移动零

    283. 移动零 给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序. 示例: 输入: [0,1,0,3,12] 输出: [1,3,12,0,0] 说明: 必 ...

  2. LeetCode 283 移动零

    给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非 零元素的相对顺序. 请注意 ,必须在不复制数组的情况下原地对数组进行操作. 解法一:使用i遍历数组,使用j标记数组下一个位 ...

  3. Leetcode 283. 移动零 解题思路及C++实现

    解题思路: 只需做一次遍历,用一个数 count 和累加已出现的 0 的个数,当 nums[i]不等于0,且count 大于0时,将 nums[i] 向前移动count 位 即可. 最后,将数组的最后 ...

  4. leetcode 283. 移动零(Java版)

    题目 题解 定义一个变量 count,用于记录累计非 0 个数,可以理解为指向第一个 0 位置的指针. 对数组进行遍历,每当遇到非 0 元素时,将此元素复制到 count 指针所指向的位置. 数组遍历 ...

  5. 【LeetCode每日一题】——283.移动零

    文章目录 一[题目类别] 二[题目难度] 三[题目编号] 四[题目描述] 五[题目示例] 六[解题思路] 七[题目提示] 八[题目进阶] 九[时间频度] 十[代码实现] 十一[提交结果] 一[题目类别 ...

  6. leetcode算法练习 JavaScript实现

    leetcode 表格内容由spider.js从leetcode-cn.com爬取. 已做题目答案也从leetcode-cn.com中爬取并生成文件. 解题进度:已解决 140/637 - 简单 94 ...

  7. 283. 移动零 golang

    283. 移动零 给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序. 示例: 输入: [0,1,0,3,12] 输出: [1,3,12,0,0] 说明: 必 ...

  8. [东哥的leetcode刷题日记] leetcode 283 : Move Zeroes

    leetcode 283 : Move Zeroes 题目链接: https://leetcode-cn.com/problems/move-zeroes/ 难度: 简单 归类 : 数组操作 题目: ...

  9. 【leetcode刷题记录】283移动零

    class Solution {public void moveZeroes(int[] nums) {int j = 0;for(int i=0;i<nums.length;i++) {if( ...

  10. 【LeetCode笔记】283. 移动零(Java)

    文章目录 题目描述 思路 & 代码 更新版 题目描述 原地操作 & 减少操作次数:不能直接只拷非零数,也不要每次都一个个推动整个数组 思路 & 代码 维护一个noZeroNum ...

最新文章

  1. APP测试和传统软件测试有什么区别?
  2. Jquery中获取表单的值并提交
  3. python生成迭代的用法
  4. limit mongodb 聚合_MongoDB 统计 group 操作用不了,试试 mapReduce 吧
  5. fcpx插件:Cinematic Tracking Title for Mac电影字幕标题动画
  6. linux系统5.5安装教程,图解安装Debian 9.5全过程
  7. Codeforces Round #379 (Div. 2) 总结分享
  8. Teradata SQL tips
  9. bartender连接oracle,设置BarTender打印用的数据库连接
  10. Adobe 全家桶系列卸载工具
  11. 【thinkphp 基础 3】配合phpstudy进行验证码拓展安装
  12. MySQL --- 函数大全3
  13. 西门子PLC编程软件,最新版本是TIA STEP7 V16,功能更加强大
  14. 工具——ultraedit常用技巧
  15. 企业级360°全方位用户画像:标签系统[四]
  16. 常见的网页布局解决方案
  17. 计算矩形面积的程序python_python实现用类读取文件数据并计算矩形面积
  18. XP的140个技巧(转)
  19. SimpleDateFormat 使用
  20. 基于JAVA智能快递分拣系统计算机毕业设计源码+系统+数据库+lw文档+部署

热门文章

  1. ServletConfig对象和ServletContext对象配置初始化参数
  2. 计算机视觉—TensorFlow入门(5)
  3. 27.将 VMware 服务器上的虚拟机备份到 Azure(上)
  4. Python---面向对象(一)
  5. MySQL服务器意外关机-无法启动多实例
  6. 【SpringMVC】下载功能
  7. (转载)equals与==
  8. 梅西精彩过人绝技,太帅了!
  9. s2 安恒 漏洞验证工具_Struts2漏洞利用工具下载(更新2017-V1.8版增加S2-045/S2-046)-阿里云开发者社区...
  10. X86汇编语言从实模式到保护模式10:进入保护模式