資料結構之棧 python實現簡單的堆疊

2021-08-21 18:13:03 字數 674 閱讀 5790

棧:是一種容器,可存入資料元素、訪問元素、刪除元素

特點:只能從頂部插入(入棧)資料和刪除(出棧)資料

原理:lifo(last in first out)後進先出

棧可以使用順序表實現也可使用鍊錶實現

使用python列表實現**:

class stack(object):

"""棧

使用python列表實現

"""def __init__(self):

self.items = list()

def is_empty(self):

"""判空"""

return self.items ==

def size(self):

"""獲取棧元素個數"""

return len(self.items)

def push(self, item):

"""入棧"""

def pop(self):

"""出棧"""

self.items.pop()

def peek(self):

"""獲取棧頂元素"""

if self.is_empty():

raise indexerror("stack is empty")

return self.items[-1]

python資料結構之棧的實現

棧 stack 又名堆疊,它是一種運算受限的線性表。其限制是僅允許在表的一端進行插入和刪除運算。這一端被稱為棧頂,相對地,把另一端稱為棧底。向乙個棧插入新元素又稱作進棧 入棧或壓棧,它是把新元素放到棧頂元素的上面,使之成為新的棧頂元素 從乙個棧刪除元素又稱作出棧或退棧,它是把棧頂元素刪除掉,使其相鄰...

資料結構之棧實現

ps 棧用類實現比較好,可以同時管理多種資料結構。不過對於剛剛接觸的我來說,就看著數,按著書上的流程走吧。我會盡力把棧的特點講解清楚,以後有了更深入的了解,我會再來補充的。逆波蘭表示法 是一種將運算子寫在運算元後面的描述程式 算式 的方法。舉個例子,我們平常用中綴表示法描述的算式 1 2 5 4 改...

資料結構Python實現 棧

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