Corso di Raku / Appendice 🆕 / Lavorare con i dati / Liste, array e hash / Exercises / L’elemento più frequente
Soluzione: L’elemento più frequente
Ecco una possibile soluzione del compito.
Codice
my @values = <a b a c a b>;
my %count;
%count{$_}++ for @values;
say %count.sort(-*.value)[0].key;🦋 Trova il programma nel file most-common.raku.
Output
aCommenti
Dopo aver contato ogni valore in
%count, ordinare le coppie per-*.valuemette per prima la più frequente;[0].keyrestituisce poi quell’elemento.Raku può fare il conteggio al posto tuo con un
Bag, che conta quante volte compare ogni valore. Poi.max(*.value)sceglie la coppia con il conteggio più alto, e.keyè l’elemento stesso:my @values = <a b a c a b>; say @values.Bag.max(*.value).key; # a
L’intero conteggio è un’unica chiamata di metodo, e non c’è alcun hash esplicito da gestire.