【すたっく】
スタック とは?
💡 「後から積んだお皿から取り出す」積み上げ型のデータ管理
📌 このページのポイント
スタックって何?
どんな場面で使われるの?
一番身近なのはブラウザの「戻る」ボタン。訪れたページを順にスタックに積んでいって、「戻る」を押すたびに一番上(最後に訪れたページ)を取り出す。エディタの「元に戻す(Ctrl+Z)」もスタックで実現されているよ。
コールスタックって聞いたことがあるんだけど?
関数を呼び出すたびに「どこから呼ばれたか・どこに戻るか」の情報をスタックに積んでいく仕組みだよ。再帰関数を深くしすぎると「スタックオーバーフロー」というエラーが起きる。これはスタックの積み上げ上限を超えてしまった状態なんだ。
スタックとキューってどう使い分けるの?
「技術スタック」のスタックは別の意味なの?
まとめ:ざっくりこれだけ覚えればOK!
「スタック」って出てきたら「後から入れたものを先に取り出すお皿の積み上げ方式のデータ構造」と思えばだいたいOK!
📖 おまけ:英語の意味
「Stack」 = 積み重ね・積み上げたもの
💬 英語で「積み上げた山」を意味する。皿を積み上げて一番上から取るイメージがそのまま名前になっているよ