----------------------------------------------------------------------

nums[i]==0   --> 放入下标队列，没有元素移动
nums[i]!=0 && !queue.isEmpty()  --> 从位置队列头取出一个位置j，将这个值nums[i]赋给取出的位置nums[j]，同时将此位置i（值已移动，可用）放入位置队列
nums[i]!=0 && queue.isEmpty()  --> 说明之前的都已经好了，不需要进行任何操作

AC代码如下：

```public class Solution {
public void moveZeroes(int[] nums) {
List<Integer> queue=new ArrayList<>();
for(int i=0;i<nums.length;i++){
if(nums[i]!=0 && !queue.isEmpty()){
nums[queue.remove(0)]=nums[i];
}else if(nums[i]==0){
}
}
Arrays.fill(nums,nums.length-queue.size(),nums.length,0);
}
}```

AC代码：

```public class Solution {
public void moveZeroes(int[] nums) {
int i=0,j=0;
while(i<nums.length){
if(nums[i]==0){
j=Math.max(i,j);
while(j<nums.length && nums[j]==0) j++;
if(j==nums.length) return ;
nums[i]=nums[j];
nums[j++]=0;
}
i++;
}
}
}```

## LeetCode之283. Move Zeroes的更多相关文章

1. LeetCode Javascript实现 283. Move Zeroes 349. Intersection of Two Arrays 237. Delete Node in a Linked List

283. Move Zeroes var moveZeroes = function(nums) { var num1=0,num2=1; while(num1!=num2){ nums.forEac ...

2. 283. Move Zeroes（C++）

283. Move Zeroes Given an array nums, write a function to move all 0's to the end of it while mainta ...

3. LeetCode 283. Move Zeroes （移动零）

Given an array nums, write a function to move all 0's to the end of it while maintaining the relativ ...

4. leetcode 283. Move Zeroes -easy

题目链接:https://leetcode.com/problems/move-zeroes/ 题目内容: Given an array nums, write a function to move ...

5. Java [Leetcode 283]Move Zeroes

题目描述: Given an array nums, write a function to move all 0's to the end of it while maintaining the r ...

6. Leetcode 283 Move Zeroes python

题目: Given an array nums, write a function to move all 0's to the end of it while maintaining the rel ...

7. 11. leetcode 283. Move Zeroes

Given an array nums, write a function to move all 0's to the end of it while maintaining the relativ ...

8. Leetcode 283 Move Zeroes 字符串

class Solution { public: void moveZeroes(vector<int>& nums) { ; ; i< nums.size(); ++i){ ...

9. 283 Move Zeroes

/** * 题意:将0挪到末尾,并且不改数组中原有元素的顺序 * 解析:找到0元素,然后寻找其后面非0的元素,进行交换位置 * @param {number[]} nums * @return {vo ...

## 随机推荐

1. T-SQL 将存储过程结果插入到表中

解决方案1: CREATE TABLE #tmpBus (    COL1 INT,    COL2 INT )   INSERT INTO #tmpBus Exec SpGetRecords 'Pa ...

2. 【UOJ #13】【UER #1】跳蚤OS

http://uoj.ac/problem/13 建立trie树,然后建立go指针, 和AC自动机里的fail指针差不多, 走到一个快捷方式就从go指针走. 注意在trie树上要保留字符'/',不能用 ...

3. sqllite 入门

链接: http://www.jb51.net/article/52064.htm

4. 从零开始系列-R语言基础学习笔记之二 数据结构（二）

在上一篇中我们一起学习了R语言的数据结构第一部分:向量.数组和矩阵,这次我们开始学习R语言的数据结构第二部分:数据框.因子和列表. 一.数据框 类似于二维数组,但不同的列可以有不同的数据类型(每一列内 ...

5. html显示时间

<html> <head> <script type="text/javascript"> function time() { var time ...

6. 树状数组 + 位运算 LA 4013 A Sequence of Numbers

题目传送门 题意:n个数,两种操作,一是每个数字加x,二是查询& (1 << T) == 1 的个数 分析:因为累加是永远的,所以可以离线处理.树状数组点是c[16][M] 表示数 ...

7. Iterable（迭代器）的用法

一.前言 在开发中,经常使用的还是for-each循环来遍历来Collection,不经常使用Iterable(迭代器)的,下面记录一下terable是一般用法: 二.说明 迭代器是一种设计模式,它是 ...

8. hdu1695 莫比乌斯反演

莫比乌斯反演:可参考论文:<POI XIV Stage.1 <Queries>解题报告By Kwc-Oliver> 求莫比乌斯函数mu[i]:(kuangbin模板) http ...

9. 新知识Tom大叔

http://www.cnblogs.com/TomXu/archive/2011/12/15/2284752.html http://www.cnblogs.com/TomXu/archive/20 ...

10. 玩转无线电 -- 温哥华天车 RFID 票务系统

0x00 前言 如今物联网 RFID系统已经完全融入了我们的生活当中. 从楼宇门禁到 Apple Pay. 可以说其身影是无处不在.很多网友也分享了自己对RFID系统的安全测试心得.不过大多还是基于门 ...