Python Languageスタック


前書き

スタックは、ラスト・イン・ファーストアウト(LIFO)原理に従って挿入および除去されるオブジェクトのコンテナです。プッシュダウンスタックでは、アイテムをスタックにプッシュし、スタックからアイテムをポップするという 2つの操作だけが許可されます 。スタックは、制限されたアクセスデータ構造です。 要素は、スタックの最上部でのみ追加または削除できます 。スタックの構造的定義は次のとおりです。スタックは空であるか、スタックで構成され、スタックはスタックで構成されます。

構文

  • stack = []#スタックを作成する
  • stack.append(object)#スタックの先頭にオブジェクトを追加する
  • stack.pop() - > object#スタックから一番上のオブジェクトを返し、それも削除します
  • list [-1] - > object#一番上のオブジェクトを削除せずにそのオブジェクトを拾い読みします

備考

ウィキペディアから:

コンピュータサイエンスでは、 スタックは、要素をコレクションに追加するpushと 、まだ削除されていない最も最近追加された要素を削除するpopの 2つの主要な操作を持つ、要素のコレクションとして機能する抽象データ型です。

それらの要素がアクセスされる方法により、スタックはラスト・イン・ファーストアウトLIFOスタックとも呼ばれます

Pythonでは、リストをスタックとして使用し、 append()をpushおよびpop()としてpop操作として使用できます。両方の操作は一定時間O(1)で実行されます。

Pythonのdequeデータ構造は、スタックとしても使用できます。デキューはリストと比較して、 dequeから一定の時間の複雑さでプッシュ操作とポップ操作を可能にします。

スタック 関連する例