Tri d'une Carte de Structs - GOLANG

J'ai une carte de structs que je suis remplissage par diffusion de données à un programme de Go. La façon dont la carte est mise à jour est similaire à l'exemple ci-dessous.

Une fois que j'ai cette carte de structs peuplées, ce qui est la meilleure (ou la bonne) manière de trier cette carte par les valeurs de la count champ dans la structure?

package main

type data struct {
    count int64
}

func main() {
    m := make(map[string]data)
    m["x"] = data{0, 0}
    if xx, ok := m["x"]; ok {
        xx.count = 2
        m["x"] = xx
    } else {
        panic("X isn't in the map")
    }
}

Cet exemple peut être exécuté ici: http://play.golang.org/p/OawL6QIXuO

  • Vous pouvez envisager d'utiliser un B-Arbre ou un rouge-noir arbre pour votre but. Autant que je me souvienne il n'y a pas implémentations de référence dans la bibliothèque, mais ces structures de données ne sont pas difficiles à mettre en œuvre, de toute façon.
InformationsquelleAutor DJElbow | 2013-11-13