Hej Mam tablicę, w której każdy element jest hash zawierający kilka wartości i liczba.Zdobądź pierwsze n elementów z tablicy ruby wartości mieszania
result = [
{"count" => 3,"name" => "user1"},
{"count" => 10,"name" => "user2"},
{"count" => 10, "user3"},
{"count" => 2, "user4"}
]
mogę posortować tablicę według liczby w następujący sposób:
result = result.sort_by do |r|
r["count"]
end
Teraz chcę, aby móc pobierać z najlepszymi wpisy n oparte na liczbie (nie tylko pierwszy (n)) Czy istnieje elegancki sposób to zrobić? Jako przykład, niech n = 1 oczekiwałbym zestawu wyników.
[{"count" => 10,"name" => "user2"}, {"count" => 10, "user3"}]
ponieważ poprosiłem o wszystkich wpisów z najwyższym wynikiem .. gdybym poprosił o najlepszych 2 najwyższymi wynikami bym dostać
[{"count" => 10,"name" => "user2"}, {"count" => 10, "user3"}, {"count" => 3, "user1"}]
Doskonały. Wielkie dzięki za pomoc. –