メインコンテンツまでスキップ

スタック

スタックとは

データを後入れ先出し(LIFO : Last In First Out)のリスト構造を持つデータ構造をスタック(stack)という。

イメージ図

ほとんどの言語で標準で実装されているのでそれ使用するのが一番高速に動作するため、標準で実装されているものを使用する。

stack.py
# Pythonの標準ライブラリ
from collections import deque

# 初期化
box = deque()

# push 要素を一番後ろに追加する
box.append(1)
box.append(2)
box.append(3)
print(box) # deque([1, 2, 3])
box.append(4)
print(box) # deque([1, 2, 3, 4])

# pop 一番後ろ(新しい)要素を取り出し
print(box.pop()) # 4
print(box.pop()) # 3
print(box) # deque([1, 2])

Pop

データを後ろから取り出す処理。言語により、名称が異なるがスタックのデータ構造でデータを取り出す処理をPopという。

イメージ図

Push

データを後ろに入れる処理。言語により、名称が異なるがスタックのデータ構造でデータを入れる処理をPushという。

イメージ図