题解 | #移动 0#
移动 0
https://www.nowcoder.com/practice/102586387caa4afcbad6f96affce9780
class Solution { public: //双指针划分为三个区间 //[0,dest]非0元素,[dest+1,cur-1]0元素,[cur,n-1]待处理元素 vector<int> moveZeroes(vector<int>& nums) { int n=nums.size();//数组元素个数 int dest=-1,cur=0; while(cur<n) { if(nums[cur]!=0) { swap(nums[++dest],nums[cur++]); } else { cur++; } } return nums; } };