classSolution { public: voidmoveZeroes(vector<int>&nums) { intn=nums.size();intleft=0;intright=n-1; vector<int>ans(n); for(inti=0;i<n;++i){ if(nums[i]==0){ ans[right]=nums[i]; --right; } elseif(nums[i]!=0){ ans[left]=nums[i]; ++left; } } nums.assign(ans.begin(),ans.end()); } };
整体的思路就是利用vector容器,创建双数组来对0进行操作