Junior — Middle
Da li struktura podataka Map garantuje očuvanje reda umetanja elemenata?
sobes.tech АИ
Одговор од АИ
U jeziku Go, struktura podataka map ne garantuje očuvanje reda umetanja elemenata. Iteracija preko map se dešava u nasumičnom redosledu, koji se može menjati pri svakom prolazu.
Ako je potrebno sačuvati red umetanja, potrebno je koristiti dodatnu strukturu, na primer, slice za skladištenje ključeva u željenom redosledu, ili koristiti spoljne biblioteke koje implementiraju uredjene rečnike.
Primer prolaska kroz map sa očuvanjem reda ključeva:
package main
import "fmt"
func main() {
m := map[string]int{"a": 1, "b": 2, "c": 3}
keys := []string{"a", "b", "c"} // red umetanja
for _, k := range keys {
fmt.Println(k, m[k])
}
}