How do I shuffle an array randomly?
方法一:
使用List::Util模組
use List::Util 'shuffle';
@shuffled = shuffle(@list);
方法二:
使用Fisher-Yates shuffle
sub fisher_yates_shuffle {
my $deck = shift;
my $i = @$deck;
while ($i--) {
my $j = int rand ($i+1);
@$deck[$i,$j] = @$deck[$j,$i];
}
}
方法一:
使用List::Util模組
use List::Util 'shuffle';
@shuffled = shuffle(@list);
方法二:
使用Fisher-Yates shuffle
sub fisher_yates_shuffle {
my $deck = shift;
my $i = @$deck;
while ($i--) {
my $j = int rand ($i+1);
@$deck[$i,$j] = @$deck[$j,$i];
}
}
全站熱搜
留言列表