[LeetCode] Move Zeroes
来源:互联网 发布:手机android编程软件 编辑:程序博客网 时间:2024/06/16 09:34
/************
** Move Zeroes
**
**Given an array nums, write a function to move all 0’s to the end of it while maintaining the relative order of the non-zero elements.
**For example, given nums = [0, 1, 0, 3, 12], after calling your function, nums should be [1, 3, 12, 0, 0].
**Note:
**You must do this in-place without making a copy of the array.
**Minimize the total number of operations.
***********/
Note:
1、把0都移到数组右边,并保持非零数的顺序不变。该题反过来想就是把非0数都按顺序移到数组的左边,这样就很好理解了。
void moveZeroes(int *nums, int numsSize){ int *pZero, *pNoZero; int *pLast = &nums[numsSize]; pZero = nums; while (*pZero != 0) // 第一个0的位置 { if (pZero++ == pLast - 1) { return; } } pNoZero = pZero + 1; //从第一个0的下一个开始遍历 while (pNoZero != pLast) { if (*pNoZero != 0) { *pZero++ = *pNoZero; *pNoZero++ = 0; } else { pNoZero++; } }}
0 0
- leetcode 283: Move Zeroes
- leetcode - Move Zeroes
- Leetcode: Move Zeroes
- LeetCode - Move Zeroes
- LeetCode-Move Zeroes
- [LeetCode]Move Zeroes
- leetcode-283-Move Zeroes
- [leetcode 283]Move Zeroes
- LeetCode---Move Zeroes
- LeetCode 283----Move Zeroes
- LeetCode Move Zeroes
- LeetCode Move Zeroes
- Leetcode #283 Move Zeroes
- leetcode: (283) Move Zeroes
- [LeetCode 283] Move Zeroes
- 【LeetCode】Move Zeroes
- LeetCode-Move Zeroes
- [LeetCode] Move Zeroes
- CGRect的常见用法
- UFT
- Hibernate-检索策略
- 网上下载一个开源项目,但是缺失jar包怎么办
- Xcode7中CocosPods 编译报错
- [LeetCode] Move Zeroes
- LuaJava:跟着LuaJava一步一步学习JNI -1
- lightoj 1100 - Again Array Queries 【思维题】
- win7安装ubuntu双系统,建议使用u盘安装
- MFC获取系统时间
- JavaScript 开发进阶:理解 JavaScript 作用域和作用域链
- 相对布局的layout_alignLeft属性
- 飞机订票系统客户端-分段截断异常处理
- OnTouchListener的用法