题目截图
方法一:两次遍历
利用两次循环,第一次循环记录数组中非零的部分并覆盖原数组。记录数组中零元素个数。
第二次循环从n-count开始,将数组末尾部分的元素赋值为零。
class Solution:
def moveZeroes(self, nums: List[int]) -> None:
"""
Do not return anything, modify nums in-place instead.
"""
n = len(nums)
count = 0
j = 0
for i in range(0, n):
if nums[i]==0:
count += 1
else:
nums[j] = nums[i]
j += 1
for i in range(n-count, n):
nums[i] = 0
完整测试代码
from ty