Sobes.tech
Junior — Middle

Ar rūšiavimo algoritmas keičia pradinį masyvą (slice)?

sobes.tech AI

Atsakymas iš AI

Go standartiniame pakete sort teikiamos funkcijos, skirtos išrikiuoti sluoksnius (slice). Rikiavimas vyksta vietoje, tai yra, pradinė sluoksnio reikšmė keičiasi.

Pavyzdžiui, jei turite sluoksnį:

nums := []int{3, 1, 4, 2}
sort.Ints(nums)
fmt.Println(nums) // Išves: [1 2 3 4]

Po sort.Ints(nums) iškvietimo nums turinys pasikeis — elementai bus išrikiuoti toje pačioje sluoksnio vietoje.

Todėl, rikiavimo algoritmai Go nekuria naujo sluoksnio, o keičia esamą.