給你一個長度固定的整數數組 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
官方的說法還是用雙指針,可我就是學不會,看來要加油了