LeetCode —— 移动零
给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。
示例:
输入:[0,1,0,3,12]
输出:[1,3,12,0,0]
说明:
- 必须在原数组上操作,不能拷贝额外的数组。
 - 尽量减少操作次数。
 
/**
* @param {number[]} nums
* @return {void} Do not return anything, modify nums in-place instead.
*/
var moveZeroes = function(nums) {
for(var i = 0;i < nums.length;i++){
if(nums[i] === 0){
zIndexTop(nums,i,nums.length);
}
}
};
function swapArray(arr, index1, index2) {
arr[index1] = arr.splice(index2, 1, arr[index1])[0];
return arr;
}
function zIndexTop(arr,index,length){
if(index+1 != length){
var moveNum = length - 1 - index;
for (var i = 0; i<moveNum; i++) {
swapArray(arr, index, index + 1);
index++;
}
}
}
LeetCode —— 移动零的更多相关文章
- 【LeetCode从零单排】No 3 Longest Substring Without Repeating Characters
		
题目 Given a string, find the length of the longest substring without repeating characters. For exampl ...
 - 【LeetCode从零单排】No189	.Rotate Array
		
称号 Rotate an array of n elements to the right by k steps. For example, with n = 7 and k = 3, the arr ...
 - 【LeetCode从零单排】No15	 3Sum
		
称号 Given an array S of n integers, are there elements a, b, c in S such that a + b + c = 0? Find all ...
 - leetcode 移动零
		
给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序. 示例: 输入: [0,1,0,3,12] 输出: [1,3,12,0,0] 这道题比较好想出来 /** ...
 - 【LeetCode从零单排】No.135Candy(双向动态规划)
		
1.题目 There are N children standing in a line. Each child is assigned a rating value. You are giving ...
 - 【LeetCode从零单排】No 114 Flatten Binary Tree to Linked List
		
题目 Given a binary tree, flatten it to a linked list in-place. For example,Given 1 / \ 2 5 / \ \ 3 4 ...
 - [LeetCode] Coin Change 硬币找零
		
You are given coins of different denominations and a total amount of money amount. Write a function ...
 - [LeetCode] Move Zeroes 移动零
		
Given an array nums, write a function to move all 0's to the end of it while maintaining the relativ ...
 - [LeetCode] Lemonade Change 买柠檬找零
		
At a lemonade stand, each lemonade costs $5. Customers are standing in a queue to buy from you, and ...
 
随机推荐
- xml是什么
			
XML(Extensible Markup Language)是可扩展标记语言,用于标记电子文件使其具有结构性的标记语言,可以用来标记数据.定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言 ...
 - Java学习随笔(2)--爬虫--天气预报
			
public class Spiderweather { public static void main(String[] args) { List<String> list = null ...
 - xfs 的一些工具使用
			
[root@localhost caq]# xfs_db -c frag -r /dev/sdaw actual , ideal , fragmentation factor 82.56% Note, ...
 - SQL Server死锁诊断--同一行数据在不同索引操作下引起的死锁
			
死锁概述 对于数据库中出现的死锁,通俗地解释就是:不同Session(会话)持有一部分资源,并且同时相互排他性地申请对方持有的资源,然后双方都得不到自己想要的资源,从而造成的一种僵持的现象.当然,在任 ...
 - Jmeter软件介绍
			
1.软件结构 Apache JMeter是Apache组织开发的基于Java的压力测试工具.用于对软件做压力测试,它最初被设计用于Web应用测试,但后来扩展到其他测试领域. 它可以用于测试静态和动态资 ...
 - vcenter 不可访问虚拟机
			
因为虚拟机找不到路径了,要么是删了,要么阵列顺序乱了什么的. 进入vsphere client: 储存器适配器里扫描一下,或者直接就已经识别了. 进入储存器里,全部扫描一下,或手动添加一下即可.
 - 【c】多级指针
			
一.一级指针 1.int *p,*p2; p是变量名,*表明是指针,指针指向地址. 在定义时初始化,如int *p_2 = &b; //定义一个指针,指针指向一个地址 先定义再初始化,如int ...
 - JAVA常用注解
			
摘自:https://www.cnblogs.com/guobm/p/10611900.html 摘要:java引入注解后,编码节省了很多需要写代码的时间,而且精简了代码,本文主要罗列项目中常用注解. ...
 - linux一台服务器配置多个Tomcat
			
前提:linux服务器上已经运行多个Tomcat,再去搭建一个Tomcat服务 1.官网下载Tomcat 2.上传到服务器指定一个目录/usr/local/tomcat 3.然后解压tar包,tar ...
 - 基于角色的访问控制 (RBAC)权限管理
			
RBAC(Role-Based Access Control,基于角色的访问控制),就是用户通过角色与权限进行关联.简单地说,一个用户拥有若干角色,每一个角色拥有若干权限.这样,就构造成“用户-角色- ...