classSolution: defmoveZeroes(self, nums: List[int]) -> None: """ Do not return anything, modify nums in-place instead. """ i, j = 0, 1 n = len(nums) while j < n: if nums[i] != 0: i += 1 j += 1 elif nums[j] == 0: j += 1 elif nums[j] != 0: nums[i], nums[j] = nums[j], nums[i] i += 1 j += 1 return
更简洁的表示
1 2 3 4 5 6 7 8 9 10
classSolution: defmoveZeroes(self, nums: List[int]) -> None: """ Do not return anything, modify nums in-place instead. """ zero = 0 for i in range(len(nums)): if nums[i] != 0: nums[i], nums[zero] = nums[zero], nums[i] zero += 1