Raku kurss / Pielikums 🆕 / Darbs ar datiem / Saraksti, masīvi un jaucējtabulas / Exercises / Biežākais elements
Risinājums: Biežākais elements
Šeit ir iespējams risinājums uzdevumam.
Kods
my @values = <a b a c a b>;
my %count;
%count{$_}++ for @values;
say %count.sort(-*.value)[0].key;🦋 Atrodiet programmu failā most-common.raku.
Izvade
aKomentāri
Pēc katras vērtības saskaitīšanas
%count, kārtošana pēc-*.valueliek biežāko pa priekšu;[0].keytad atdod šo elementu.Raku skaitīšanu var izdarīt jūsu vietā ar
Bag, kas saskaita, cik reižu katra vērtība parādās. Tad.max(*.value)izvēlas pāri ar lielāko skaitu, un.keyir pats elements:my @values = <a b a c a b>; say @values.Bag.max(*.value).key; # a
Visa saskaitīšana ir viens metodes izsaukums, un nav nekādas jaucējtabulas, kas būtu jāpārvalda.
Kursa navigācija
← Biežākais elements | Savienojiet divus sarakstus jaucējtabulā →