見出し画像

私のAI学習日記②~Python入門:総合添削課題~

総合添削課題は、バイナリサーチ(二分探索)でした。

関数の定義、while文、if文のちょうどよい練習になりました。

1つ1つの文法は基礎的な文法を組み合わせることで、

けっこう本格的なプログラムができるのが驚きでした。

数学の幾何の証明みたいですね。


バイナリサーチって、いかにもプログラムの世界のロジックっぽいですが、

日常の生活でも、それに似たことって結構あると思います。


たとえば、60分のドラマを録画しているとして、

お気に入りのシーンをもう一度見たいとします。

そして、話の前後関係はだいたいわかっているものとします。

最初に、ちょうど真ん中の30分のところを頭出しして、

探しているシーンが、30分のシーンより前か後か判断します。

これが1ターン目。

「もうちょっと後だったかな」と思ったら、

30分と60分の中間の45分のシーンを出して、また同じように、

それより前か後かを判断します。これが2ターン目。

後はこの繰り返しで、半分の時点のシーンを出して、それより前か後かを判断するという処理を繰り返していくと、

探索範囲が60分→30分→15分とだんだん半分になっていきます。

頭から1分ずつ探していくより、明らかに早いですね!

以上、総合添削課題について、ご紹介しました。


※総合添削課題の問題や解答は、Aidemyさんの著作物だと思うので、

(題材自体が世間的に知られたものであっても)なるべく原文は載せずに、

 そのエッセンスだけ、ご紹介するようにします。