How to pad an array to a specified length with a given value in Go

1 Answer

0 votes
package main

import "fmt"

func padArray(arr []int, length int, paddingValue int) []int {
        arrLen := len(arr)

        if arrLen >= length {
            // No padding needed, return the original array
            return arr 
        }

        newArr := make([]int, length)
        copy(newArr, arr) // Copy existing elements

        for i := arrLen; i < length; i++ {
            newArr[i] = paddingValue
        }

        return newArr
}

func main() {
        arr := []int{1, 2, 3}

        paddedArr1 := padArray(arr, 6, 0)
        fmt.Println(paddedArr1) 

        paddedArr2 := padArray(arr, 2, 0) // No padding needed
        fmt.Println(paddedArr2) 

        arr3 := []int{} // Empty slice
        paddedArr3 := padArray(arr3, 5, -1)
        fmt.Println(paddedArr3) 


}


/*
run:

[1 2 3 0 0 0]
[1 2 3]
[-1 -1 -1 -1 -1]

*/

 



answered Feb 4 by avibootz
edited Feb 4 by avibootz
...