, das ein mehrdimensionales Array sortiert, kann erreicht werden, indem man manuell definiert, wie die Sortierung auftreten soll. Zwei Ansätze können verfolgt werden:
1. Implementierung der Sort.Sort -Schnittstelle:
Erstellen Sie benutzerdefinierte Methoden für Len, Less und Swap, um sie mit Sort.Sort zu verwenden, sodass Sie die Array -Werte während des Sortierens ändern können. Zum Beispiel:
type Matrix [3][3]int func (m Matrix) Len() int { return len(m) } func (m Matrix) Less(i, j int) bool { for x := range m[i] { if m[i][x] == m[j][x] { continue } return m[i][x]2. Verwenden der Funktion "sort.slice":
das Array in eine Scheibe konvertieren und eine vergleichbare Funktion für Sort.Slice geben, um die Sortierung zu verarbeiten. Zum Beispiel:
sort.Slice(matrix[:], func(i, j int) bool { for x := range matrix[i] { if matrix[i][x] == matrix[j][x] { continue } return matrix[i][x]Beide Ansätze ermöglichen es Ihnen, das Sortierverhalten Ihres zweidimensionalen Arrays in Go zu passen.
Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.
Copyright© 2022 湘ICP备2022001581号-3