Wie finde ich den Schlüssel für den größten Wert?
Habe ich die folgenden hash - {"CA"=>2, "MI"=>1, "NY"=>1}
Wie kann ich wieder die maximale Schlüssel-Wert-paar mit ruby? Ich würde es gerne zurückgeben "CA"
InformationsquelleAutor der Frage JZ. | 2011-05-18
Du musst angemeldet sein, um einen Kommentar abzugeben.
Zurückkehren max hash-Schlüssel-Wert-paar, je nach Wert des hash-elements:
InformationsquelleAutor der Antwort Hck
Fand ich diesen Weg , den Schlüssel zurück, der erste max-Wert
InformationsquelleAutor der Antwort Tiberiu Macelaru
Andere Möglichkeit könnte wie folgt Aussehen:
Dieser läuft durch die einzelnen Schlüssel-Wert-paar-und zurück (oder in diesem Fall bringt ' s) der Taste(s), wobei der Wert gleich dem max aller Werte. Sollte dies wieder mehr als einen Schlüssel, wenn es gibt ein Unentschieden.
InformationsquelleAutor der Antwort K. George Pradhan
Können Sie die Methode auswählen, wenn Sie möchten, dass der Schlüssel-Wert-paar zurückgegeben:
InformationsquelleAutor der Antwort ecoding5
Wenn Sie abrufen möchten, und mehr als ein Schlüssel-Wert-paar basierend auf der Reihenfolge(Sekunde, größten, kleinsten, etc.), eine effizientere Art und Weise werden zum Sortieren der hash einmal und dann bekommen die gewünschten Ergebnisse.
Schlüssel der größte Wert
Bekommen max und min
2. größte Schlüssel-Wert-paar
Konvertieren der hash-array zurück in eine hash -
InformationsquelleAutor der Antwort Linju
Habe ich heute ein ähnliches problem und endete mit:
Ruby weniger als 2,3, können Sie ersetzen Sie
&.last
mit.try(:last)
Entweder man ist einfach ein Schutz für wenn Ihre Quell-hash ist leer:
{}
InformationsquelleAutor der Antwort JP Duffy
Wird das Ergebnis der letzten Schlüssel des hash, nach Größe sortiert; es kann jedoch sein, zwei Tasten mit dem gleichen Wert.
InformationsquelleAutor der Antwort thenengah