你好 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