voidmoveZeroes(std::vector<int>& nums){ int left = 0; int right = 0; while (right < nums.size()) { //当右指针不为零时与左指针互换元素 if (nums[right]) { int x = nums[left]; nums[left] = nums[right]; nums[right] = x; right++; left++; } else right++; } };
intmain(){ std::vector<int> nums = { 0,1,0,3,12 }; moveZeroes(nums); for (int num : nums) { std::cout << num << std::endl; } }