プログラミングの宝箱 アルゴリズムとデータ構造 第2版
アルゴリズムとデータ構造と言えば、名著アルゴリズムとデータ構造があるが、例がModula-2という言語で書かれているということで、現在では実用的とはいえない。本書はC/C++とJavaで記述されており、ソート、サーチのアルゴリズムや、リスト、グラフなどのデータ構造が紹介されている。
本来、アルゴリズムとデータ構造はソフトウエア設計において重要な基礎であるが、こうしたことを勉強せずにひたすらコードを書いているプログラマを散見する。かつて、プログラムの速度を数倍に向上するためにはデータ構造を、1桁向上するためにはアルゴリズムを見直す必要があると言われた(出典は覚えていないが・・・)。それほどアルゴリズムとデータ構造はプログラムにおいて重要な要素である。本書のような良書を読んで、きっちりとした基礎を身につけることが重要であると思う。