| Sorteer :: Sleutel Sorteer :: Sleutel is de snelste manier om iets in PERL te sorteren. |
Download nu |
Sorteer :: Sleutel Rangschikking & Samenvatting
- Vergunning:
- Perl Artistic License
- Naam uitgever:
- Salvador Fandi
- Uitgever website:
- http://search.cpan.org/~salva/Net-SFTP-Foreign-1.42/lib/Net/SFTP/Foreign.pm
Sorteer :: Sleutel Tags
Sorteer :: Sleutel Beschrijving
Sorteer :: Sleutel is de snelste manier om iets in Perl te sorteren. Sorteer :: Key is de snelste manier om alles in Perl.Synopsis te sorteren, Sorteer :: Key QW (Keysort NKEYSORT IKEYSORT); @by_Name = Keysort {"$ _-> {Achternaam} $ _-> {name}"} @people; # Sorteren op een numerieke sleutel: @by_age = nkeyort {$ _-> {leeftijd}} @people; # Sorteren op een numerieke integer-toets: @by_sons = ikeysort {$ _-> {zonen}} @people; Sorteer :: Key biedt een reeks functies om lijsten met waarden te sorteren door een aantal berekende sleutelwaarde.Het is sneller (meestal veel Sneller) en gebruikt minder geheugen dan andere alternatieven geïmplementeerd rond perl sorteerfunctie (ST, GRT, enz.). MultiKy sorteerfunctionaliteit wordt ook geleverd via de Companion Modules Sorteer :: Key :: MULTI, SORT :: Sleutel :: Maker en Sorteren :: Sleutel :: Register.FunctionsThis Module biedt een groot aantal sorteersubroutines, maar ze zijn allemaal variaties van de Keysort One: @Sorted = Keysort {calc_key ($ _)} @Datathat is conceptueel equivalent aan @Sorted = Sort {calc_key ( $ A) CMP CALC_KEY ($ B)} @Dataand, waar Calc_Key ($ _) elke expressie kan zijn om de sleutelwaarde uit $ _ te extraheren (niet alleen een subroutine-oproep). Voor instantie, sommige variaties zijn NKEYSORT die een numerieke vergelijking uitvoert , RKEYSORT dat de gegevens in aflopende volgorde bestelt, IKEYSORT en UKEYSORT die geoptimaliseerde versies van NKEYSOR zijn die kunnen worden gebruikt NL De sleutels zijn respectievelijk gehele getallen of niet-ondertekende gehele getallen, enz. Ongelegen versies van de sorteerders zijn aanwezig. Keysort_inplace {Calc_Key ($ _)} @Datathat is bijvoorbeeld gelijk aan @Data = Keysort {Calc_Key ($ _)} @Databut zijn (een beetje) sneller en gebruik van minder geheugen. De volledige lijst van subroutines die hiervan kunnen worden geïmporteerd Module volgt: Keysort {calc_key} @arrayReturns De elementen op @array gesorteerd op de sleutel berekend {calc_key} naar hen.INSIDE {calc_key}, het object is beschikbaar als $ _. John, Achternaam => Smith}, {Name => Paul, Achternaam => Belvedere}); @ BY_NAME = KEYSORT {$ _-> {naam}} @a; deze functie eert het gebruik Locale Pragma.nkeysort {calc_key} @arraySimilar naar Keysort, maar vergelijkt de sleutels numeriek in plaats van als strings. Deze functie eert het gebruik van integer Pragma, IE: Gebruik geheel getal; mijn @ s = (2,4, 2.0, 1,6, 1,2, 0,8); mijn @NS = NKEYSORT {$ _} @S; Print "@NSN" Prints 0.81.61.22.42RnKeysort {calc_key} @arrayworks als NKEYSORT, toetsen in omgekeerde (of aflopende) numerieke volgorde .Ikeysort {calc_key} @arrayworks als keysort maar vergelijkt de sleutels als gehele getallen (32 bits of meer, Geen controle wordt uitgevoerd voor overflows) .rikeysort {calc_key} @arrayworks als ikeysort, maar in omgekeerde (of aflopend) volgorde.ukeysort {calc_key} @arrayworks als keysort, maar vergelijkt de sleutels als niet-ondertekende gehele getallen (32 bits of meer). , het kan worden gebruikt om IP4-adressen efficiënt te sorteren: mijn @DATA = QW (1.2.3.44.3.2.111.1.111.1222.12.1.340.0.0.0255.255.255.0) 127.0.0.1); mijn @Sorted = ukeysort {My @A = Split /./; (((($ A Naam, $ _-> Middelnaam}, QW (STR STR STR); Sorteren :: Key :: Register_type Color => Sub {$ _-> r, $ _-> g, $ _-> B}, QW (INT INT INT); Zodra een datatype is geregistreerd, kan deze op dezelfde manier worden gebruikt als typen die native worden ondersteund, zelfs voor het definiëren van nieuwe typen, dwz: Sorteer :: Sleutel :: REGISTER_TYPE FAMILIE => sub {$ _-> man, $ _-> vrouw}, qw (persoon persoon); vereisten: · PERL-vereisten: · Perl
Sorteer :: Sleutel Gerelateerde software