Quick actions

cmd+k|ctrl+k

Navigation

Languages

HelperFunc

Snippet info

Language

Go

Visibility

public

Author

max.suclatter

Created

2025-03-27T16:53:33.451402Z

Updated

2025-03-28T15:06:59.125543Z

package main

import (
    "fmt"
)

func push [T any](arr []T, ele T) []T {
    return append(arr, ele)
}

func remove [T any](arr []T) []T {
    newArr := arr[:len(arr) - 1]
    return newArr
}

func pop [T any](arr *[]T) T {
    lastElement := (*arr)[len(*arr) - 1]
    *arr = (*arr)[:len(*arr)-1]
    return lastElement
}

func dequeue [T any](arr *[]T) T {
    firstElement := (*arr)[0]
    *arr = (*arr)[1:]
    return firstElement
}

func main() {
    sampleArr := []int{1,2,3}
    
    fmt.Println(push(sampleArr, 4))
    fmt.Println(remove(sampleArr))
    
    fmt.Println(pop(&sampleArr))
    fmt.Println(sampleArr)
    
    fmt.Println(dequeue(&sampleArr))
    fmt.Println(sampleArr)
}
INFO