4.11. Znajdowanie N najmniejszych elementów tablicy
Problem
W danej tablicy chcemy znaleźć kilka najmniejszych elementów, kilka największych lub kilka ekstremalnych ze względu na pewne kryterium.
Rozwiązanie
Pojedynczy, najmniejszy (według pewnego kryterium) element tablicy zwracany jest przez metodę Enumerable#min
. Domyślnie wspomnianym kryterium jest wynik porównania przy użyciu operatora <=>
, lecz można także określić specyficzne kryterium za pomocą odpowiedniego bloku kodowego.
[3, 5, 11, 16].min # => 3 ["three", "five", "eleven", "sixteen"].min # => "eleven" ["three", "five", "eleven", "sixteen"].min { |x,y| x.size <=> y.size } # => "five"
W podobny sposób można uzyskać element maksymalny, wywołując metodę Enumerable#max
:
[3, ...
Get Ruby. Receptury now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.