Sobes.tech
Junior — Middle

Můžete vysvětlit mechanismus přidání prvku na konec datové struktury, například seznamu nebo pole?

sobes.tech AI

Odpověď od AI

V jazyce Go se pro přidání prvku na konec řezu (slice) používá vestavěná funkce append. Řezy jsou dynamické struktury, které mohou měnit velikost.

Příklad:

package main
import "fmt"

func main() {
    nums := []int{1, 2, 3}
    nums = append(nums, 4) // přidá 4 na konec
    fmt.Println(nums) // [1 2 3 4]
}

Pokud řež nemá dostatečnou kapacitu, append vytvoří nový pole s větší velikostí, zkopíruje staré prvky a přidá nový. Pole v Go mají pevnou velikost, proto se pro dynamické přidávání používají řezy.