Go•duplicate-zeros/solution.go
package main
func duplicateZeros(arr []int) {
expanded := make([]int, 0, len(arr))
for _, value := range arr {
if len(expanded) == len(arr) {
break
}
expanded = append(expanded, value)
if value == 0 && len(expanded) < len(arr) {
expanded = append(expanded, 0)
}
}
copy(arr, expanded)
}
Python•duplicate-zeros/solution.py
class Solution:
def duplicateZeros(self, arr: list[int]) -> None:
expanded: list[int] = []
for value in arr:
if len(expanded) == len(arr): break
expanded.append(value)
if value == class="syntax-number">0 and len(expanded) < len(arr): expanded.append(class="syntax-number">0)
arr[:] = expanded
TypeScript•duplicate-zeros/solution.ts
function duplicateZeros(arr: number[]): void {
const expanded: number[] = [];
for (const value of arr) { if (expanded.length === arr.length) break; expanded.push(value); if (value === class="syntax-number">0 && expanded.length < arr.length) expanded.push(class="syntax-number">0); }
for (let index = class="syntax-number">0; index < arr.length; index += class="syntax-number">1) arr[index] = expanded[index];
}