markdown
スタックとキューの基本
lecture/information/algorithm/data-structures/スタックとキューの基本-講義.n.md

スタックとキューの基本きほん

date2026-03-27descriptionスタックとキューを、取り出し順の違いが計算にどう効くかという視点から整理し、DFS/BFS の前提になる考え方を説明します。prerequisites計算量の基本 / 配列の基本操作 / for 文と while 文type講義statusactiverelateddata/lecture/information/algorithm/data-structures/データ構造ポータル-講義.n.md / data/lecture/information/algorithm/foundation/計算量の基本-講義.n.md
algorithmdata-structuresundergraduatelecture

導入どうにゅう

この講義こうぎ最重要さいじゅうようなのは、データ構造こうぞうあたいれるはこではなく、どの順番じゅんばんすかをめる規則きそくだとることです。

おな要素ようそっていても、最後さいごれたものをさきすのか、最初さいしょれたものをさきすのかで、探索たんさく処理しょりながれはおおきくわります。

用語ようご定義ていぎ

スタックStack とは、最後さいごれた要素ようそ最初さいしょすデータ構造こうぞうです。

キューQueue とは、最初さいしょれた要素ようそ最初さいしょすデータ構造こうぞうです。

方針ほうしん

まずじゅんだけをます。そのあと、そのじゅん探索たんさく状態管理じょうたいかんりにどうくかをかんがえます。

直感的ちょっかんてき説明せつめい

スタックはさらかさねたやまのようなもので、うえからしかれません。キューはれつのようなもので、先頭せんとうから末尾まつびはいります。

厳密げんみつ説明せつめい

1. スタック

スタックでは push で要素ようそ追加ついかし、pop で最後さいご要素ようそします。したがって最新さいしん状態じょうたいもど処理しょり相性あいしょうがよく、再帰さいきしや DFS の管理かんり使つかわれます。

2. キュー

キューでは enqueue で末尾まつび追加ついかし、dequeue で先頭せんとうからします。したがって到着順とうちゃくじゅんたもったまま処理しょりしたい場面ばめんき、BFS の管理かんり使つかわれます。

3. 計算量けいさんりょう

適切てきせつ実装じっそうすれば、スタックの push / pop もキューの enqueue / dequeue も基本的きほんてきO(1)おこなえます。

見分みわかた

  • 最後さいごたものへもどりたいなら、スタックをうたがいます。
  • さきたものからじゅん処理しょりしたいなら、キューをうたがいます。
  • DFS とむすびつくのはスタック、BFS とむすびつくのはキューです。

最終形さいしゅうけい

[PARSE ERROR: Undefined("Command(\"boxed\")")]stackLIFO,queue=FIFO[PARSE ERROR: Undefined("RBrace")]

一言ひとことでいうと

  • データ構造こうぞうちがいは、じゅんちがいとしてると整理せいりしやすくなります。
raw .n.md をコピー
loc をコピー (filepath:line ~ line)
copy share link
path をコピー
copy share link
copy share link
タブを全て閉じる