mycode 77.24%
class Solution(object): def moveZeroes(self, nums): """ :type nums: List[int] :rtype: None Do not return anything, modify nums in-place instead. """ pos = 0 for i in range(len(nums)): if nums[i] != 0 : nums[pos] = nums[i] pos += 1 nums[pos:] = [0]*len(nums[pos:])
参考:
思路类似于
26-Remove Duplicates from Sorted Array
def moveZeros(nums): j = 0 # 记录非零元素应该换到第几个位置 for i in range(len(nums)): if nums[i] != 0: nums[j], nums[i] = nums[i], nums[j] j += 1 return nums print(moveZeros([1,0,1,0,3,12]))