Python算法之棧(stack)的實現(xiàn)
本文以實例形式展示了Python算法中棧(stack)的實現(xiàn),對于學(xué)習(xí)數(shù)據(jù)結(jié)構(gòu)域算法有一定的參考借鑒價值。具體內(nèi)容如下:
1.棧stack通常的操作:
Stack() 建立一個空的棧對象
push() 把一個元素添加到棧的最頂層
pop() 刪除棧最頂層的元素,并返回這個元素
peek() 返回最頂層的元素,并不刪除它
isEmpty() 判斷棧是否為空
size() 返回棧中元素的個數(shù)
2.簡單案例以及操作結(jié)果:
Stack Operation Stack Contents Return Value s.isEmpty() [] True s.push(4) [4] s.push('dog') [4,'dog'] s.peek() [4,'dog'] 'dog' s.push(True) [4,'dog',True] s.size() [4,'dog',True] 3 s.isEmpty() [4,'dog',True] False s.push(8.4) [4,'dog',True,8.4] s.pop() [4,'dog',True] 8.4 s.pop() [4,'dog'] True s.size() [4,'dog'] 2
這里使用python的list對象模擬棧的實現(xiàn),具體代碼如下:
#coding:utf8 class Stack: """模擬棧""" def __init__(self): self.items = [] def isEmpty(self): return len(self.items)==0 def push(self, item): self.items.append(item) def pop(self): return self.items.pop() def peek(self): if not self.isEmpty(): return self.items[len(self.items)-1] def size(self): return len(self.items) s=Stack() print(s.isEmpty()) s.push(4) s.push('dog') print(s.peek()) s.push(True) print(s.size()) print(s.isEmpty()) s.push(8.4) print(s.pop()) print(s.pop()) print(s.size())
感興趣的讀者可以動手測試一下本文所述實例代碼,相信會對大家學(xué)習(xí)Python能有一定的收獲。
- Python算法的時間復(fù)雜度和空間復(fù)雜度(實例解析)
- Python算法中的時間復(fù)雜度問題
- python算法題 鏈表反轉(zhuǎn)詳解
- python算法與數(shù)據(jù)結(jié)構(gòu)之單鏈表的實現(xiàn)代碼
- python算法與數(shù)據(jù)結(jié)構(gòu)之冒泡排序?qū)嵗斀?/a>
- 詳解python算法之冒泡排序
- Python算法之圖的遍歷
- Python算法輸出1-9數(shù)組形成的結(jié)果為100的所有運(yùn)算式
- python算法演練_One Rule 算法(詳解)
- python算法表示概念掃盲教程
- Python算法應(yīng)用實戰(zhàn)之棧詳解
- python算法學(xué)習(xí)之計數(shù)排序?qū)嵗?/a>
- Python集成學(xué)習(xí)之Blending算法詳解
相關(guān)文章
python實現(xiàn)分析apache和nginx日志文件并輸出訪客ip列表的方法
這篇文章主要介紹了python實現(xiàn)分析apache和nginx日志文件并輸出訪客ip列表的方法,涉及Python操作日志文件的技巧,非常具有實用價值,需要的朋友可以參考下2015-04-04Python人工智能實戰(zhàn)之對話機(jī)器人的實現(xiàn)
本文將通過Python開發(fā)一個可以講笑話的機(jī)器人,可以自由定制功能,想講幾個笑話就講幾個笑話。文中的示例代碼講解詳細(xì),感興趣的可以動手試一試2022-02-02Python用類實現(xiàn)撲克牌發(fā)牌的示例代碼
這篇文章主要介紹了Python用類實現(xiàn)撲克牌發(fā)牌的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-06-06Python實現(xiàn)圖形用戶界面和游戲開發(fā)的方法和技巧
GUI圖形用戶界面編程,我們可以通過python提供的豐富的組件,快速的實現(xiàn)使用圖形的界面和用戶交互, GUI編程類似于“搭積?”,將?個個組件(Widget)放到窗?中,這篇文章主要給大家介紹了基于Python的GUI圖形用戶界面編程的相關(guān)資料,需要的朋友可以參考下2023-05-05Qt通過QGraphicsview實現(xiàn)簡單縮放及還原效果
本文主要介紹通過QGraphicsview實現(xiàn)簡單的縮放以及縮放后還原原始大小,通過scale可以對view進(jìn)行放大或縮小,具體內(nèi)容詳情跟隨小編一起看看吧2021-09-09