Sobes.tech
Junior — Middle

Kas võib arvata, et Go lõigu elemendid on juba kasvavas või kahanevas järjekorras?

sobes.tech AI

Vastus AI-lt

Ei, Go keeles (slice) elemendid ei ole garanteeritult sorteeritud kas kasvavalt, kas kahanevalt. Slice on lihtsalt dünaamiline massiiv, mis salvestab elemendid nende lisamise või muutmise järjekorras.

Kui on vaja sorteerida slice, tuleb selgelt kutsuda sort paketi sorteerimisfunktsioonid, näiteks:

import (
    "fmt"
    "sort"
)

func main() {
    nums := []int{5, 3, 8, 1}
    sort.Ints(nums) // sorteerib slice kasvavalt
    fmt.Println(nums) // [1 3 5 8]
}

Ilma sellise sorteerimiseta sõltub elementide järjekord programmi loogikast ning see ei ole sorteeritud.