void moveZeroes(vector<int>& nums) { int j=0; for(int i=0;i<nums.size();i++){ if(nums[i]){ nums[j++]=nums[i]; } } for(int i=j;i<nums.size();i++) nums[i]=0; }
被名字误导了……所以双指针交换。
看了最快的解答才发现可以这样。反正是0,最后统一处理就好了……
void moveZeroes(vector<int>& nums) { int j=0; for(int i=0;i<nums.size();i++){ if(nums[i]){ nums[j++]=nums[i]; } } for(int i=j;i<nums.size();i++) nums[i]=0; }
被名字误导了……所以双指针交换。
看了最快的解答才发现可以这样。反正是0,最后统一处理就好了……