给你一个长度固定的整数数组 arr
,请你将该数组中出现的每个零都复写一遍,并将其余的元素向右平移。
注意:请不要在超过该数组长度的位置写入元素。
思路:利用while循环遍历数组,遇到0直接插入0,然后在弹出一个元素。
class Solution:
def duplicateZeros(self, arr: List[int]) -> None:
"""
Do not return anything, modify arr in-place instead.
"""
long=len(arr)
i=0
while i <long:
if arr[i]==0:
arr.pop()
arr.insert(i+1,0)
i=i+2
else:
i=i+1
官方的说法还是用双指针,可我就是学不会,看来要加油了