Kurso de Raku / Aldono 🆕 / Labori kun datumoj / Listoj, tabeloj kaj haketmapoj / Exercises / La plej ofta elemento
Solvo: La plej ofta elemento
Jen ebla solvo de la tasko.
Kodo
my @values = <a b a c a b>;
my %count;
%count{$_}++ for @values;
say %count.sort(-*.value)[0].key;🦋 Vi povas trovi la fontkodon en la dosiero most-common.raku.
Eligo
aKomentoj
Post nombri ĉiun valoron en
%count, ordigi la parojn laŭ-*.valuemetas la plej oftan unue;[0].keyposte redonas tiun elementon.Raku povas fari la nombradon por vi per
Bag, kiu kalkulas, kiom da fojoj ĉiu valoro aperas. Poste.max(*.value)elektas la paron kun la plej alta nombro, kaj.keyestas la elemento mem:my @values = <a b a c a b>; say @values.Bag.max(*.value).key; # a
La tuta nombrado estas unu sola metodvoko, kaj estas neniu eksplicita haketmapo administrenda.