您好,登錄后才能下訂單哦!
本篇內容主要講解“Python中棧舉例分析”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“Python中棧舉例分析”吧!
Python
中數據類型有列表,元組,字典,隊列,棧,樹等等。像列表,元組這樣的都是python內置數據結構;棧,隊列這些都是需要我們自己去定義的。
棧是一種只允許在一端插入和取出的數據結構,這一端通常被叫做棧頂,另一端叫棧底,沒有數據的叫空棧。這種數據類型由于是我們自己進行定義,所以有很多功能都需要自己寫出相應函數來實現。所以我們看看這里的功能。
棧的基本操作大概有:生成棧,入棧,出棧,返回棧頂元素,判斷是否為空棧,返回棧內元素個數。
首先我們先要創建一個棧:
class stack(object): def __init__(self): self.__list = []
這里創建出來就是一個空棧,想要檢測的話我們也可以通過一個函數來檢測是否為空棧:
def is_empty(self): return self.__list == [] # return not self.__list
這是兩種return
的檢測方式,任選其一都能夠完成。
接下來創建了棧,也知道了檢測棧是否為空。如定義所說,因為棧是我們自己定義的一種數據結構,且滿足一個后進先出的規則,那么元素的保存和取出也自然不同。我們叫做入棧和出棧。首先是入棧,我么僅需要定義一個push函數:
def push(self,item): self.__list.append(item)
然后定義一個函數pop來進行出棧:
def pop(self): self.__list.pop()
peek函數進行返回棧頂元素操作:
def peek(self): if self.__list: return self.__list[-1] else: return None
size函數進行返回棧的元素個數的操作:
def size(self): return len(self.__list)
到此,相信大家對“Python中棧舉例分析”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。