in reply to Sort assoc array

One addition to the preceding good advice. If you find yourself having to re-sort the same(sup>1*) hash more than once in your code, a useful optimisation is to keep an array that contains the keys in their sorted order and use that the second and subsequent times.

my %hash = ( your => 1, data => 2, goes = 3, here => 4 ); my @sorted_keys = sort keys %hash; for( @sort_keys ) { print $hash{ $_ }; }

1 If you only change the values, ten you can re-use @sorted_keys ok, but if you add or delete keys to/from %hash, then @sorted_keys would need to be regenerated. This is only of real benefit if

For small hashes, or those where the keys are constantly changing, or if your only iterating the hash once, this idea is best forgotten :)


Examine what is said, not who speaks.
"Efficiency is intelligent laziness." -David Dunham
"Think for yourself!" - Abigail