Sobes.tech
Senior

Kaip optimaliai sukurti žemėlapį, jei žinoma, kad įėjimo sąrašas turi milijoną elementų?

sobes.tech AI

Atsakymas iš AI

Optimizuojant Go kalbos žemėlapio (map) kūrimą, jei iš anksto žinoma įvesties slice dydis (pavyzdžiui, milijonas elementų), rekomenduojama nedelsiant paskirti reikalingą talpą naudojant make funkciją, nurodant capacity. Tai išvengs daugybinių atminties perrašymų ir pagerins našumą.

Pavyzdys:

input := make([]string, 1000000) // įvesties slice pavyzdys

// Žemėlapio inicializavimas su iš anksto nustatyta talpa
m := make(map[string]int, len(input))

for _, v := range input {
    m[v]++
}

Tokiu būdu žemėlapis sukuriamas su tinkamu dydžiu, optimizuojant darbą su dideliu elementų kiekiu.