Thread Unicode::Collate -> sehr langsam?
(26 answers)
Opened by bianca at 2014-12-27 18:42
Deine Methode 1 sieht bei meinem Verfahren so aus:
Code (perl): (dl
)
1 2 3 4 5 6 7 8 9 10 11 12 if ($methode == 1) { my $start = time(); my $uniccol = Unicode::Collate->new(); foreach my $z (reverse (0 .. $spalten-1)) { @{$data{spalten}} = sort {$uniccol->cmp($a->[$z],$b->[$z])} @{$data{spalten}}; } # foreach my $feldref (@{$data{spalten}}) { # print "@$feldref\n"; # } print "\nLaufzeit: ".(time()-$start); } Aber sei froh, dass du bei deinem Verfahren geblieben bist, es schlägt meins um Längen (Laufzeit 8 gegenüber 39). Ich habe spaßeshalber mal das $uniccol->cmp($a->[$z],$b->[$z]) durch $a->[$z] cmp $b->[$z] ersetzt. Resultat: Laufzeit 0 bei beiden Verfahren. Womit wir wieder beim Ausgangspunkt sind: $uniccol->cmp() ist wirklich tierisch langsam. Gruß
GUIfreund |