移动零
来源:互联网 发布:初中考试软件 编辑:程序博客网 时间:2024/05/18 21:39
给一个数组 nums 写一个函数将 0
移动到数组的最后面,非零元素保持原数组的顺序
注意事项
1.必须在原数组上操作
2.最小化操作数
样例
给出 nums = [0, 1, 0, 3, 12]
, 调用函数之后, nums = [1, 3, 12, 0, 0]
.
反着移动,将非0的数往前移动碰到i =0或遇到另一个非0数停止,变量一遍自然所有0跑到了后面
class Solution {public: /** * @param nums an integer array * @return nothing, do this in-place */ void moveZeroes(vector<int>& nums) { // Write your code here if (nums.empty()) return; for(int i = 0; i < nums.size(); i++) { if(nums[i] != 0) { int j = i; while(j-1 >= 0 && nums[j-1] == 0) { swap(nums[j-1], nums[j]); j--; } } } } void swap(int &a, int &b) { int temp = a; a = b; b = temp; }};
0 0
- 移动零
- 移动零
- 移动零
- 移动零
- 移动零
- 移动零
- 移动零
- 移动零
- 移动零
- 移动零 Move Zeroes
- 移动零-lintCode
- 539移动零
- LintCode:移动零
- LintCode539:移动的零
- LintCode - 539.移动零
- LintCode 539 移动零
- Java实现-移动零
- Lintcode 移动零
- csdn中如何查看排名
- 如何在数据库中存储一棵树
- Java 面向对象基础
- effect C++ 确定对象被使用前先被初始化
- Android数据存储3种方式
- 移动零
- Chrome DevTools 中文文档
- 记录下 用数字对应EXECEL表头的字母
- Unity3D_uGUI学习笔记(5)_Animation Integration简述
- 大数据相关资源
- kafka跟storm收集日志解决方案
- swap file “*.swp”already exists
- MJPEG协议入门介绍
- 学习JavaScript设计模式(六)