[pythonアルゴリズム]#スタック
スタック
スタックは制限的な資料構造であり、一端からしか資料を入れたり取り出したりできない.スタックに新しく追加された要素は元の要素の上に積み上げられるので、遅くなるほど、まず現れます.これを後入先出(LIFO)構造と呼ぶ.
📝 スタック基本演算
スタックに要素を追加します.
スタックの一番上の要素を削除し、その要素を返します.
スタックの一番上の要素は削除されず、その要素を返します.
スタックが空かどうかを確認し、空の場合は1または0を返します.
📝 スタック実装
スタックデータ構造は単独で提供されないので、スタックは、基本資料型
리스트
によって実現することができる.Pythonはリストでスタックを模倣します.したがって、スタックデータ構造を初期化すると、空のリストが生成されます.
# 빈 스택(리스트) 초기화
stack = []
stack
スタックに要素を入れる場合、
append
メソッドを使用してリストの最後に要素を入れます.# 스택에 원소 추가
stack = [1, 2, 3]
stack.append(4)
stack
# [1, 2, 3, 4]
スタックから要素を削除すると、popメソッドを使用してリストの最後の要素が削除されます.このプロセスでは、popメソッドで削除された要素を返すことができます.
# 스택에서 원소 제거 후 반환
stack = [1, 2, 3]
top = stack.pop()
print(top)
stack
# 3
# [1, 2]
スタックから要素を削除しない場合は、リストインデックスの[1]を使用して返すことができます.
# 스택의 top 반환하기
stack = [1, 2, 3]
top = stack[-1]
top
# 3
Reference
この問題について([pythonアルゴリズム]#スタック), 我々は、より多くの情報をここで見つけました https://velog.io/@nayeo0on/Python-알고리즘-스택テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol