digital ocean つかう

digital ocean さわってみてる 月500円とか安いなー。使い込んで良かったら知人にもオススメできるかも。 Perl入学式でUbuntu使うらしいし、慣れとく為にUbuntuを選択してみた。 参考:http://yutapon.hatenablog.com/entry/2014/04/15/102832

Perlで二分探索

ねむいです。 #!/usr/bin/env perl use strict; use warnings; my @array = qw/1 3 5 11 12 13 17 22 25 28/; print bs($_, \@array), "\n" for qw/25 4 29/; if(@ARGV){ print "search for ", join(', ', @array), "\n"; for my $n (@ARGV){ printf "%d is …

Perlでエラトステネスの篩

wikipediaの説明を元に書いてみた。 #!/usr/bin/env perl use strict; use warnings; my $x = 100; my @numbers = (2 .. $x); my @prime_numbers; while(1){ if($numbers[0] > sqrt $x){ push @prime_numbers, @numbers; last; } my $number = shift @number…

Perlでユークリッドの互除法

簡単そうだったんで、wikipediaの最初の説明だけみて実装。 #!/usr/bin/env perl use strict; use warnings; my ($x, $y) = (1071, 1029); print euclidean($x, $y), "\n"; sub euclidean { my ($x, $y) = @_; my $r = $x % $y; return $y if $r == 0; retur…

Perlでマージソート

wikipediaのrubyの例をPerlにしただけ。最初にリストを分割するのに再帰をしているところとか、もうちょっといい感じにしてみたいと思ったり。 #!/usr/bin/env perl use strict; use warnings; my @a = (3, 2, 0, 5, 8, 3, 4, 1, 3, 2); mergesort(@a); sub …

Perlでクイックソート

wikipediaのCのサンプルをPerlに起こした感じのやつ。 無駄に再帰回数が多い気がしなくもない。 どっか間違ったかも。 #!/usr/bin/env perl use strict; use warnings; my @a = (3, 2, 0, 5, 8, 3, 4, 1, 3, 2); my @b = @a; qs(\@b, 0, $#b); print @a, "\n…