leetcode——Move Zeroes
2015-09-22 16:07
134 查看
Given an array
to the end of it while maintaining the relative order of the non-zero elements.
For example, given
be
Note:
You must do this in-place without making a copy of the array.
Minimize the total number of operations.
思路:
从头开始遍历。分别设置两个累加器来表示前面整数的个数和后面0的个数,当a+b=nums.size()的时候遍历结束。
代码实现:
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,
numsshould
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.
思路:
从头开始遍历。分别设置两个累加器来表示前面整数的个数和后面0的个数,当a+b=nums.size()的时候遍历结束。
代码实现:
class Solution { public: void moveZeroes(vector<int>& nums) { int n=nums.size(); int a=0; int b=0; while(a+b<n){ if(nums.at(a)==0){ nums.erase(nums.begin()+a); nums.push_back(0); b++; } else a++; } } };
相关文章推荐
- 桥接表
- 各类数据结构的特点
- java多线程 synchronized volatile Atomic LOCK的使用
- Android笔记:调用finish()后不能立即执行onDestroy()的BUG
- 文件复制
- sql思维
- Android 多状态按钮 ToggleButton
- Android RadioGroup/RadioButton
- nyoj1132promise me a medal【线段相交判定+求交点】
- iOS开发-------自定义回调
- APP审核加急成功
- Android checkBox
- AutoCompleteTextview、MultiAutoCompleteTextView
- Thinkpad升级Window10无法安装expresscache
- ogre for wind7的自我娱乐
- test5.16
- HDOJ 4342History repeat itself(数学)
- JavaScript得到屏幕宽高、页面宽高
- runtime的一篇文章
- QMap的key的使用 value的使用