⭐ in reply to How do I shuffle an array?
The Fisher-Yates shuffle is easy to code up:
# randomly permutate @array in place sub fisher_yates_shuffle { my $array = shift; my $i = @$array; while ( --$i ) { my $j = int rand( $i+1 ); @$array[$i,$j] = @$array[$j,$i]; } } fisher_yates_shuffle( \@array ); # permutes @array in place
|
---|
Replies are listed 'Best First'. | |
---|---|
Re: Answer: How do I shuffle an array?
by runrig (Abbot) on Aug 21, 2002 at 16:40 UTC |
In Section
Seekers of Perl Wisdom