Python實現棧結構

2021-08-17 15:20:42 字數 1005 閱讀 1544

這裡借助python的list結構,實現順序棧,其中的一些棧操作都是借助list的一些內建操作來實現的。

classstackunderflow(valueerror):#以list實現了順序棧的結構

passclasssstack():

def__init__(self):

self.__elmes =

defis_empty(self):

returnself.__elmes ==

deftop(self):

ifself.__elmes == :

raisestackunderflow("in sstack.top()")

returnself.__elmes[-1]

defpush(self,elem):

defpop(self):

ifself.__elmes == :

raisestackunderflow("in sstack.pop()")

returnself.__elmes.pop()#list中的pop沒有給出元素時,預設彈出最後乙個元素

st1= sstack()

st1.push(3)

st1.push(5)

while notst1.is_empty():

print(st1.pop())

#輸出:5 3

資料結構Python實現 棧

有些地方稱為堆疊。可以存入 訪問 刪除元素,其只能允許在容器的一端進行載入資料和輸出資料,任何時候訪問和刪除的資料都是最好存入的那個資料,預設了訪問的順序。其原理為後進先出。pop 彈出棧頂元素 peek 返回棧頂元素,只是得到其數值並不彈出來 stack 建立乙個新的空棧 size 返回棧的元素個...

python如何實現棧 Python實現棧的方法

usr bin env python 定義乙個列表來模擬棧 stack def pu 出棧,用到了pop 函式 def popit if len stack 0 print cannot pop from an empty stack else print removed stack.pop 編歷棧...

用python實現棧 Python實現棧的方法

usr bin env python 定義乙個列表來模擬棧 stack def pu 出棧,用到了pop 函式 def popit if len stack 0 print cannot pop from an empty stack else print removed stack.pop 編歷棧...