Like this..
use Data::Dumper;
my @array = (a..z);
my %hash = map { $array[$_] => $_ } 0..$#array;
print Dumper(\%hash);
__END__
$VAR1 = {
'w' => 22,
'r' => 17,
'a' => 0,
'x' => 23,
'd' => 3,
'j' => 9,
'y' => 24,
'u' => 20,
'k' => 10,
'h' => 7,
'g' => 6,
'f' => 5,
't' => 19,
'i' => 8,
'e' => 4,
'n' => 13,
'v' => 21,
'm' => 12,
's' => 18,
'l' => 11,
'c' => 2,
'p' => 15,
'q' => 16,
'b' => 1,
'z' => 25,
'o' => 14
};
Update...i cheated this one ;-)
@hash{@array} = 0..$#array;
map
Regards, Karl
«The Crux of the Biscuit is the Apostrophe»