给定一个数组 nums,编写一个函数将全部 0 移动到数组的末尾,同时保持非零元素的相对顺序。web
示例:数组
输入: [0,1,0,3,12]
输出: [1,3,12,0,0]
说明:svg
必须在原数组上操做,不能拷贝额外的数组。
尽可能减小操做次数。函数
class Solution { public: void moveZeroes(vector<int>& nums) { int fl=0; for(int i=0;i<nums.size()-fl;) { if(nums[i]==0) {for(int j=i;j<nums.size()-fl-1;j++) nums[j]=nums[j+1]; nums[nums.size()-1-fl]=0; fl++; } else i++; } } };
本文分享 CSDN - 希境。
若有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一块儿分享。.net