読者です 読者をやめる 読者になる 読者になる

IT練習ノート

IT関連で調べたこと(実際は嵌ったこと)を書いています。

ソートの練習

use List::Util qw(shuffle);
@foo = (9,8,7,6,5);
sub mysort {
   my @a = @_;
   if (scalar(@a)<2) {
      return @a; 
   } else {
      return ( mysort(grep { $_ < $a[0] } @a), 
                  $a[0], 
                mysort(grep { $a[0] < $_ } @a)
      );
   }
}
for (1..10){
  @foo = shuffle(@foo);
  print @foo;
  print "\t";
  print mysort(@foo);
  print "\n";
}