平成26年度秋季 応用情報技術者試験(AP)の午後問題3はマージソートの問題でした。今までいくつかのプログラミング言語でクイックソートをはじめ何種類かのソートアルゴリズムを作ってはいますが、よく考えてみるとマージソートを作ったことはなかったような気がします。マージソートは理屈は簡単に思えるのですが、それを作るとなると億劫に思っていたんだと思います。せっかくの機会なので作ってみました。
h26a_ap_pm3.rb
実行結果
$ ruby h26a_ap_pm3.rb Before:6 4 3 8 7 2 1 5 After :1 2 3 4 5 6 7 8