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