in reply to RE: Re: Array to Hash
in thread Array to Hash
While we're on the topic of benchmarking, I'd just like to,
for the hell of it, add the worst possible answer to this
question:
And now for a little program, borrowed from httptech:map { $code .= "\$hash{$_} = 1;\n" } @array; eval "$code";
Outputsuse Benchmark; my @array = qw(a b c d e f g h i j k l m n o p q r s t u v w z y z); my %hash; timethese(10000, { 'btrott' => sub { @hash{@array} = (1) x @array; }, 'plaid' => sub { my $code map { $code .= "\$hash{$_} = 1;\n" } @array; eval "$code"; } });
Don't know why i threw this in. Guess I just didn't want to waste the effort:)Benchmark: timing 10000 iterations of btrott, plaid... btrott: 1 wallclock secs ( 0.56 usr + 0.00 sys = 0.56 CPU) plaid: 23 wallclock secs (22.07 usr + 0.06 sys = 22.13 CPU)
In Section
Seekers of Perl Wisdom