Was ist die Big O-Leistung von Karten in Golang?

Das Abschnitt "Kartentypen" der go-Sprachspezifikation beschreibt die Benutzeroberfläche und die allgemeine Verwendung von Kartentypen und das Beitrag "Go maps in action" auf The Go Blog erwähnt gelegentlich Hash-Tabellen und "schnelle Suchvorgänge, Hinzufügungen und Löschvorgänge".

DasStromruntime/hashmap.go Quellcod beschreibt seine Implementierung als Hash-Tabelle (die in der Regel abgeschrieben wirdO(1)); Ich sehe jedoch keine Garantie für Leistungsmerkmale (wie die Leistung von Big O) in der Sprachspezifikation oder in anderen Materialien.

Macht die Go-Sprache ein beliebigesPerformanc Garantien (z. B. Einfügen / Nachschlagen / Löschen zu konstanten Zeiten?) für Kartentypen oder nurSchnittstell garantiert? (Vergleichen Sie mit der Java-Sprache, in der interfaces und Implementierungen sind klar getrennt.)

Antworten auf die Frage(6)

Ihre Antwort auf die Frage