Thread Werte in Hash und gleichzeitig doppelte finden (14 answers)
Opened by rk-ger at 2007-01-01 23:46

pq
 2007-01-08 19:56
#72846 #72846
User since
2003-08-04
12209 Artikel
Admin1
[Homepage]
user image
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
my @a = (0..1000, 0..1000);
Benchmark::timethese($ARGV[0]||-1,{
 "shift" => sub {
    my (%seen, $string);
    my @array = @a;
    $seen{$string}++ while defined ($string = shift @array);
    for (keys %seen) {
       push @array, $_;
delete $seen{$_};
    } return @array;
 },
 "grep"  => sub {
    my %seen;
    my @unique = grep { ! $seen{$_}++ } @a;
 },
});
__END__
     grep:  1 wallclock secs ( 1.04 usr +  0.00 sys =  1.04 CPU) @ 614.42/s (n=639)

    shift:  1 wallclock secs ( 1.03 usr +  0.00 sys =  1.03 CPU) @ 296.12/s (n=305)
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem

View full thread Werte in Hash und gleichzeitig doppelte finden