棧的python實現

2022-05-08 21:33:15 字數 973 閱讀 5787

棧,又名堆疊,它是一種運算受限的線性表。其限制是僅允許在表的一端進行插入和刪除運算。這一端被稱為棧頂,相對地,把另一端稱為棧底。

向乙個棧插入新元素又稱作進棧、入棧或壓棧,它是把新元素放到棧頂元素的上面,使之成為新的棧頂元素;從乙個棧刪除元素又稱作出棧或退棧,它是把棧頂元素刪除掉,使其相鄰的元素成為新的棧頂元素。

棧按照先進後出的原則儲存資料,先進入的資料被壓入棧底,最後的資料在棧頂,需要讀資料的時候從棧頂開始彈出資料(最後乙個資料被第乙個讀出來)。棧具有記憶作用,對棧的插入與刪除操作中,不需要改變棧底指標。

特點:後進先出

python**實現如下:

class

stack(object):

#棧的初始化

def__init__

(self):

self.items =

#判斷棧是否為空

defis_empty(self):

return self.items ==

#新增乙個元素到棧中[入棧]

defpush(self, item):

#刪除棧中的乙個元素[出棧]

defpop(self):

ifself.items:

self.items.pop()

else

:

raise lookuperror("

stack is empty")

#返回棧的頂部元素[最新元素]

deftop(self):

return self.items[-1]

#返回棧的元素的個數

defsize(self):

return

len(self.items)

stack = stack()

用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 編歷棧...

python棧的實現

1.棧stack通常的操作 stack 建立乙個空的棧物件 push 把乙個元素新增到棧的最頂層 pop 刪除棧最頂層的元素,並返回這個元素 peek 返回最頂層的元素,並不刪除它 isempty 判斷棧是否為空 size 返回棧中元素的個數 2.以 pat的pop sequence為例,原題位於 ...