アルゴリズムとデータ構造
アルゴリズム本の定石といえばNikulaus Wirth著(片山卓也 訳)「アルゴリズム+データ構造=プログラム」だと思う自分は、この本と同じようにこの業界では古典の部類なんだろうな。Pascal*1で書かれたこの本で、みっちりと勉強させられました。特にアルゴリズムの効率、という考え方は今も役だっています。だからみんなに読んでもらいたいけど、絶版。その第二版として出版されたのが次の本。
- 作者: N.ヴィルト,Niklaus Wirth,浦昭二,国府方久史
- 出版社/メーカー: 近代科学社
- 発売日: 1990/09/01
- メディア: 単行本
- 購入: 1人 クリック: 41回
- この商品を含むブログ (16件) を見る
第一版との違いは
といったところかな。しかし日本でMudula-2使ったことある人ってどのくらいいるんだろう。PascalはTurbo Pascalとか一時期それなりのシェアがあったし、その後Delphiでに受け継がれていった。今でもDelphi経験者は探せば見つかる。「どうせ書き直すならC言語にしてくれればよかったのに」と思うけど、C言語開発者の一人であるBrian W. Kernighanは”Why Pascal is Not My Favorite Programming Language”という論文で PASCALを批判していたからWirthには無理な相談だろう。そんなわけで、今勧めるとしたらこれかな。やっぱ古典の部類だけど。
アルゴリズムとデータ構造 (岩波講座 ソフトウェア科学 3)
- 作者: 石畑清
- 出版社/メーカー: 岩波書店
- 発売日: 1989/03/30
- メディア: 単行本
- 購入: 10人 クリック: 83回
- この商品を含むブログ (17件) を見る
今どきのオブジェクト指向ではクラス設計とかデザインパターンとかを論じる本が多いけど、ぶっちゃけ最後はメソッドをどう実装するか?アルゴリズムの中核が書かれるのはメソッドの中。それがヘタレな出来だと、もうどうしようない*3。だからボトムアップ的だけど、こういう本でアルゴリズムについてちゃんと勉強する機会があってもいいと思う。しかし現実は新卒にこの辺を叩き込む時間的な余裕はなく*4、通り一遍の導入教育後、最前線に配置されてしまう。そうなると「アルゴリズムってなんですか?今流行のスイーツですか?」と言いかねない人が出てくるわけだ。うつだね~。