Python基于列表模擬堆棧和隊列功能示例
本文實例講述了Python基于列表模擬堆棧和隊列功能。分享給大家供大家參考,具體如下:
之前的文章http://www.dbjr.com.cn/article/59897.htm介紹了堆棧與隊列的Python實現(xiàn)方法,這里使用列表來模擬一下堆棧與隊列的簡單操作。
一、隊列特點:先進先出、后進后出
用列表insert、pop模擬進隊出隊:
>>> l = [] >>> l.insert(0,'p1') >>> l.insert(0,'p2') >>> l.insert(0,'p3') >>> l ['p3', 'p2', 'p1'] >>> l.pop() 'p1' >>> l.pop() 'p2' >>> l.pop() 'p3'
用列表append、pop模擬進隊出隊:
>>> l = [] >>> l.append('p1') >>> l.append('p2') >>> l.append('p3') >>> l ['p1', 'p2', 'p3'] >>> l.pop(0) 'p1' >>> l.pop(0) 'p2' >>> l.pop(0) 'p3'
二、堆棧特點:先進后出、后進先出
用列表insert、pop方法模擬進棧出棧:
>>> l = [] >>> l.insert(0,'a1') >>> l.insert(0,'a2') >>> l.insert(0,'a3') >>> l ['a3', 'a2', 'a1'] >>> l.pop(0) 'a3' >>> l.pop(0) 'a2' >>> l.pop(0) 'a1'
用列表append、pop方法模式進棧出棧:
>>> l = [] >>> l.append('a1') >>> l.append('a2') >>> l.append('a3') >>> l ['a1', 'a2', 'a3'] >>> l.pop() 'a3' >>> l.pop() 'a2' >>> l.pop() 'a1'
更多關于Python相關內(nèi)容感興趣的讀者可查看本站專題:《Python數(shù)據(jù)結(jié)構與算法教程》、《Python加密解密算法與技巧總結(jié)》、《Python編碼操作技巧總結(jié)》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》及《Python入門與進階經(jīng)典教程》
希望本文所述對大家Python程序設計有所幫助。
相關文章
Python中TypeError: int object is not 
在Python中,當你嘗試對一個非迭代對象(如整數(shù)、浮點數(shù)等)使用迭代操作(如for循環(huán)、列表推導式中的迭代等)時,會觸發(fā)TypeError: 'int' object is not iterable錯誤,所以本文給大家介紹了Python中TypeError: int object is not iterable錯誤分析及解決辦法2024-08-08PyCharm 2021.2 (Professional)調(diào)試遠程服務器程序的操作技巧
本文給大家分享用 PyCharm 2021 調(diào)試遠程服務器程序的過程,通過圖文并茂的形式給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友參考下吧2021-08-08pytest使用@pytest.mark.parametrize()實現(xiàn)參數(shù)化的示例代碼
這篇文章主要介紹了pytest使用@pytest.mark.parametrize()實現(xiàn)參數(shù)化,本文通過示例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-07-07Python機器學習庫Scikit-learn實戰(zhàn)教程
文章介紹了Python在機器學習領域的應用,重點介紹了Scikit-learn庫的使用方法,并通過實際案例展示了如何使用Scikit-learn進行分類、回歸、聚類和文本挖掘等任務,同時,文章還討論了特征工程、超參數(shù)調(diào)整、避免過擬合和交叉驗證等進階技巧2025-01-01