use List::Util 'shuffle'; my @random = shuffle 0 .. $N;