「料理の段取り」がプログラミングに役立つ理由

「怠け者の欲求」がアルゴリズムを発展させた

何を、どこで、何個買うか、どの順番で回るかがわかっていたので、当然かかった時間も短く、楽な気持ちで買い物できました。足も疲れずに済んだだけでなく、奥さんからは「あなた、すごいわ!」と久々に見直されたのでした。

料理の段取りもアルゴリズム

今度は、奥さんが負けじと料理の段取りに張り切ります。

「さあ、ホームパーティーの準備に取りかかるわよ! あなたに対抗して料理の工程と分担表を作ってみたわ」

「なんと、これはすごい!」と驚くあなたに、奥さんはにっこり微笑みながら、「優先順位の最も高い作業は、待ち時間の長いプロセス。2番目は次の工程にリンクしているプロセス、3番目は作業時間自体が長いプロセス。そして最も優先順位が低い、つまり、お客様がいらっしゃる直前にすべき作業は、時間が経つと味が大きく落ちるメニューのプロセス」としたり顔で言うのでした。

そして、ホームパーティー当日は、余裕を持って楽しみながら行うことができたので、ゲストも大満足。そして、あなたと奥さんの夫婦仲も円満に!……なったかどうかはさて置き、 この買い物と料理の例から、日常生活や家事においても、

・早く効率良く終わらせたい
・次回にも役立つ手法を作りたい

という気持ちが働いていることをご理解いただけましたでしょうか。

こういった気持ちから作られた「処理の手順」のことを「アルゴリズム」と呼びます。そして、プログラミングの世界では、どのような場合でも適用できるよう、このアルゴリズムをもっと数学的に突き詰めて、一般化していくのです(『爆速! アルゴリズム』第12章の「スーパーマーケットを効率良く回る」では、多次元配列とヒープという概念を使って考え方を説明しています)。

数学的にどこまで処理の手順(アルゴリズム)を突き詰めていくかは別として、やっていることとしては、プログラマーもあなたも、「早く、効率のよい手順」、つまり、アルゴリズムを作ったという点において全く同じである、といってよいでしょう。

そしてこのことは、家事だけでなく、会社での仕事の進め方から出勤時の通り道、仕事の段取りに至るまで、生活全般、いや人生全般において当てはまるといっても過言ではありません。これらすべてにおいてアルゴリズム(プログラミング的思考)を皆、意識・無意識のうちに使っているわけです。

次ページ判断基準からアルゴリズムは作られる
キャリア・教育の人気記事
トピックボードAD
関連記事
  • コロナショックの大波紋
  • コロナショック、企業の針路
  • 日本野球の今そこにある危機
  • 新競馬好きエコノミストの市場深読み劇場
トレンドライブラリーAD
アクセスランキング
  • 1時間
  • 24時間
  • 週間
  • 月間
  • シェア
トレンドウォッチAD
激震! コロナ危機<br>総力特集 土壇場の世界経済

欧米での爆発的な感染拡大により、リーマンショック以上の経済悪化が濃厚です。「自宅待機令」下の米国現地ルポに各国の政策対応、トヨタも国内工場停止に至った自動車産業、ほぼ半値へと急下降したREIT市場など徹底取材。