博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
283-移动零
阅读量:6891 次
发布时间:2019-06-27

本文共 781 字,大约阅读时间需要 2 分钟。

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

示例 

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

说明:

  1. 必须在原数组上操作,不能拷贝额外的数组。
  2. 尽量减少操作次数。

 

解决方法:

使用冒泡排序改良版

1 var moveZeroes = function(nums) { 2     var temp = null 3     for (var i = 0, j = nums.length; i < j; i++) { 4         for (var m = 0, n = nums.length - i - 1; m < n; m++) { 5             if (nums[m] === 0) { 6                 temp = nums[m] 7                 nums[m] = nums[m + 1] 8                 nums[m + 1] = temp 9             }10         }11     }12 13     return nums14 };

 

使用javascript中sort方法,本地测试通过,在leedcode中失效。方法如下

1 var moveZeroes = function(nums) {2     nums.sort(function (a, b) {3         return b == 0 ? -1 : 04     })5 6     return nums7 };

 

存在疑问:javascript的sort采用的是什么排序算法?

 

转载于:https://www.cnblogs.com/jacky-jyk/p/10566806.html

你可能感兴趣的文章
python获取昨日日期
查看>>
海康威视 - 萤石云开放平台 js 版
查看>>
关于分销平台
查看>>
剑指offer---12-**--数值的整数次方
查看>>
PAT - L2-010. 排座位(并查集)
查看>>
Python 学习笔记 - 线程(线程锁,信标,事件和条件)
查看>>
大数据技术服务商个推获4亿人民币D轮融资
查看>>
Git的详细使用教程
查看>>
iOS实现类似苹果手机原生的锁屏界面(数字密码)
查看>>
[vue] 表单输入格式化,中文输入法异常
查看>>
Observer观察者模式与OCP开放-封闭原则
查看>>
如何搭建高级工程师知识框架?推荐两种方式
查看>>
BAT的医疗春秋大梦
查看>>
Pulsar本地单机(伪)集群 (裸机安装与docker方式安装) 2.2.0
查看>>
利用H5的css3制作动画
查看>>
Android View 事件分发源码分析
查看>>
vue 2.0 - props
查看>>
RustCon Asia 实录 | Rust 在国内某视频网站的应用
查看>>
Vue遇上Analytics
查看>>
修改max_allowed_packet(允许执行的sql最大长度)
查看>>