しかし、そのためには、大容量のデータベースの中から、あなたのユーザー名を探索しなければなりません。あなたのユーザー名が仮に「M」で始まっているとすると、Facebookは「A」から順番にユーザー名を探索せずに、中央辺りから始めたほうがずっと合理的です。そのため、二分探索が使われているのです。
ちなみに、二分探索の面白い使い道としては、映画のシーン探しがあります。2時間の映画の中から、お気に入りのシーンを見つけたいとき、まずは1時間のところまで飛ばし、探しているシーンがそのシーンより前なら30分、後なら1時間30分のところまで飛ばします。
これを繰り返せば、1から全部観ていくより短い時間で、お気に入りのシーンを見つけることができます。これは、1つの映画が場面ごとに順番に並んでいるのを「単調性」と捉えて、応用しているわけです。
アルゴリズムは、できるだけ効率的にすばやく問題を解決するために生み出されたものなので、その考え方を実生活に応用することで、ちょっとしたライフハックとして使うことができるのです。
フローチャートで効率UP
ほかにも、アルゴリズムの考え方を紹介しましょう。
たとえば、工場の生産ラインでは、必ず製品を組み立てる順番がありますよね。また、同時並行で、複数個の部品を組み立てて、ある場所で統合するといった複雑なプロセスを経ている場合も少なくありません。
そのため、「フローチャート」と呼ばれる流れ図を書いて、製造ラインを設計しています。なかでも「この工程が遅れると、その後の全工程に大きな影響を及ぼす」という重要な工程を「クリティカルパス」といいます。
そのため、アルゴリズムを使って最適な製造工程を設計しているのです。この手法は工場の製造ラインだけでなく、受験勉強や料理の手順などいろいろな工程に応用可能です。
たとえば、肉野菜炒めとごはんを作るとします。その工程をフローチャート化したものが下の図です。これを見ると、どのように作業をすれば一番効率がいいかが見えてきます。
無料会員登録はこちら
ログインはこちら