python資料結構之棧

2021-10-07 16:48:54 字數 654 閱讀 7777

1.棧的特點:**先出,實際上就是對順序表和煉表的進一步封裝。棧可以用順序表表示,也可以用鍊錶表示。

用鍊錶構造棧:方法一:在鍊錶頭部新增元素,並在頭部取出元素,相應的時間複雜度為o(1);方法二:在鍊錶尾部新增元素,並在尾部取出元素,因為要遍歷整個鍊錶,相應的時間複雜度為o(n)。因此,選用方法一。

3.關於棧的操作:新增元素、彈出棧頂元素、返回棧頂元素、判斷是否為空、計算元素個數

class stack(object):

def __init__(self):

#設定乙個列表

self.__items =

def push(self,item):

#新增元素

def pop(item):

#彈出棧頂元素

return self.__items.pop()

def peek(self):

#返回棧頂元素

return self.__items[-1]

def is_empty(self):

#判斷是否為空

return self.items ==

def length(self):

#計算棧中元素個數

return len(self.items)

Python資料結構之棧

容器 作為容器資料結構,它們保證存入的元素被儲存在容器裡,尚未明確刪除的元素總是可以訪問,而取出並刪除的元素就不再存在於容器中了 棧 棧主要用於在計算過程中儲存臨時的資料,這些資料是計算中發現或者產生的,在後面的計算中可能需要使用它們 棧是最簡單的快取結構,它支援資料項的儲存和訪問,不支援資料項之間...

Python資料結構之 棧

什麼是棧?棧是一種先進先出的儲存器,只可以通過乙個入口訪問其中的資料項。限定僅在表尾進行插入和刪除操作的線性表。這一端被稱為棧頂,相對地,把另一端稱為棧底。向乙個棧插入新元素又稱作進棧 入棧或壓棧,它是把新元素放到棧頂元素的上面,使之成為新的棧頂元素 從乙個棧刪除元素又稱作出棧或退棧,它是把棧頂元素...

python資料結構之棧(stack)

目錄 棧的定義 棧的基本操作 小練習棧遵循後進先出 last in first out 現實生活中也有不少這樣的例子,比如在學校食堂吃完飯時,你把盤子放到桌子上,疊起來之後,阿姨過來拿盤子出去洗,假如是手洗,那肯定是先從最上面的盤子開始拿來洗的,而最上面的盤子是最後放上去的,卻是第乙個 被拿出來的,...