第10話:再帰する卵 ~問いが問いを呼ぶ時~
テーマ:再帰処理(Recursion)
🍳 シーン:家庭科室、卵と格闘中の放課後
「ねぇ遥斗、オムライスってさ、卵が先? それとも中身が先?」
真中紗和が、卵焼き用フライパンを傾けながら首をかしげた。
「中のケチャップライスが先なら包めるけど、
でも外の卵から焼かないと、焦げるんだよね。
……これってつまり、“どっちから考えればいいかわかんなくなる系”じゃない?」
遥斗が、手を止めずに返す。
「それ、再帰ってやつだね」
💻 アルゴ、ひょっこり登場(鍋の湯気から現れる演出)
再帰(Recursion)とは?
「自分自身を定義に使う」処理方法
例:オムライスを作るには → 小さいオムライスを包んで、1枚増やす
「つまり、オムライス(n段)=卵+オムライス(n-1段)」
「ベースケース:n = 1 のとき、中身だけで完成」
🥚 紗和、ピンとくる
「え、ちょっと待って。
それって……卵を重ねていくってこと? オムライス in オムライス?」
「そう。いちばん下に小さいケチャップライスがあって、
その上に卵+ごはん、卵+ごはん……を重ねていく。
“問いの中に、問いがある”構造ってやつだね」
🍽 実践!再帰式オムライス
紗和たちは、直径を少しずつ変えた卵焼きを何層も作っていく。
1段目:ごはん(ベースケース)
2段目:ごはん+卵
3段目:それ+卵
……以下、n段階に渡って包んでいく
こと葉がそれを見てつぶやいた。
「卵が卵を呼んで、最終的に“中身が見えない料理”になるんだね。
まるで人の悩みみたい」
🌀 トラブル発生:卵が破れる
「うわっ、6段目の卵、破れた!」
「それ、再帰の“スタックオーバーフロー”みたいなもんだね」
遥斗が平然と言う。
「重ねすぎると、処理の限界がくる。人間の頭も同じさ。
だから、“どこで終わるか”をきちんと決めておくのが大事なんだ」
📘 アルゴから補足
✔ 再帰には必ず終了条件(ベースケース)が必要です
✔ 無限ループにならないために、“ここで終わり”を明示しましょう
🧠 話は思考の深みに
食べながら、紗和が言った。
「答えってさ、ひとつじゃない気がする。
それどころか、答えを考えることで、別の問いが出てくることもあるよね」
「そう、それが再帰的思考」
遥斗が答える。
「一度で“わかる”より、何度も問い直していくことで見えてくることがある。
だから再帰は、“考え続ける力”でもあるんだよ」
🧠 今日のアルゴリズムまとめ
**再帰(Recursion)**は、自分自身を使って処理を定義する考え方
「終了条件(ベースケース)」がないと、永遠に終わらない
「何層にも重なる構造」を扱うときに強い(例:数列、木構造、料理?)
❓考えてみよう
「考えれば考えるほど、また別の問いが出てきたこと」はある?
自分の“悩み”にベースケースってあると思う?
🎁 エピローグ
皿に残った最後のオムライスを見ながら、紗和はぽつりと言った。
「……おいしいって思った瞬間が、きっとベースケースだよね」
アルゴが答えた。
「それが“味覚の最適解”です。迷わず、そこで止まってください」
次回 → 第11話「マージでマジック ~2つの記憶が重なる場所~」
(テーマ:マージソート)
新規登録で充実の読書を
- マイページ
- 読書の状況から作品を自動で分類して簡単に管理できる
- 小説の未読話数がひと目でわかり前回の続きから読める
- フォローしたユーザーの活動を追える
- 通知
- 小説の更新や作者の新作の情報を受け取れる
- 閲覧履歴
- 以前読んだ小説が一覧で見つけやすい
アカウントをお持ちの方はログイン
ビューワー設定
文字サイズ
背景色
フォント
組み方向
機能をオンにすると、画面の下部をタップする度に自動的にスクロールして読み進められます。
応援すると応援コメントも書けます