Christian Kruse: Hash - Sortieren...

Beitrag lesen

你好 Rolf,

my @names = sort map{$ds{$_}{name}}keys %ds;
O(n + ld n)
my @names = sort { $ds{$a}{name} cmp $ds{$b}{name} } keys %ds;
Das ist dann O(ld n)

hmm, wenn ich

my @names = sort map{$ds{$_}{name} ; print "#"; }keys %ds;

ausgebe, sehe ich genauso viele '#' wie es Listenelemente gibt. Wie
kommst Du dann auf O(n + ld n) ?

map {} kostet O(n), der Sortiervorgang kostet im Mittel O(ld n). Daraus
folgt: O(n + ld n).

再见,
 CK

--
No Shoes On Mat!
http://wwwtech.de/