アルゴリズムは「何らかの問題を解決する手順」を指し、アルゴリズムの良しあしでソフトウエアの性能が決まると言っても過言ではない。私たちの生活は、高度なアルゴリズムで実装されたソフトウエアに支えられている。エレベーターや信号機の制御ソフトを例に、身近なアルゴリズムの一端を見ていく。今回は、エレベーターのアルゴリズムの基本編だ。 朝はいつもエレベーター前が大渋滞、ボタンを押してもなかなか来ない――。こんな経験は誰しもあるだろう。どうすればエレベーターにスムーズに乗れるのか。この答えはエレベーターのアルゴリズムを理解できれば、おのずと見えてくる。 アルゴリズムとは、「何らかの問題を解決する手順」を指し、この手順をコンピュータが理解できるように記述したものがプログラムだ。エレベーターは、高度なアルゴリズムによって実装されたプログラムで動いている。ボタンを押してもなかなか来ないエレベーターは実在するも