-
Notifications
You must be signed in to change notification settings - Fork 0
/
duplicate_zeroes.py
34 lines (23 loc) · 942 Bytes
/
duplicate_zeroes.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# Given a fixed-length integer array arr, duplicate each occurrence of zero, shifting the remaining elements to the right.
# Note that elements beyond the length of the original array are not written. Do the above modifications to the input array in place
# and do not return anything.
# Example 1:
# Input: arr = [1,0,2,3,0,4,5,0]
# Output: [1,0,0,2,3,0,0,4]
# Explanation: After calling your function, the input array is modified to: [1,0,0,2,3,0,0,4]
# Example 2:
# Input: arr = [1,2,3]
# Output: [1,2,3]
# Explanation: After calling your function, the input array is modified to: [1,2,3]
# Constraints:
# 1 <= arr.length <= 104
# 0 <= arr[i] <= 9
class Solution:
def duplicateZeros(self, arr: List[int]) -> None:
index = 0
while index < len(arr):
if arr[index] == 0:
arr.insert(index, 0)
arr.pop()
index += 1
index += 1