最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python中的deque雙向隊(duì)列詳解

 更新時(shí)間:2023年09月13日 10:17:41   作者:Yake1965  
這篇文章主要介紹了python中的deque雙向隊(duì)列詳解,相比 list 實(shí)現(xiàn)的隊(duì)列,deque 擁有更低的時(shí)間和空間復(fù)雜度,list 實(shí)現(xiàn)在出隊(duì)(pop)和插入(insert)時(shí)的空間復(fù)雜度大約為O(n),需要的朋友可以參考下

python deque(雙向)隊(duì)列

Python 標(biāo)準(zhǔn)庫中包含了四種隊(duì)列,分別是 queue.Queue / asyncio.Queue / multiprocessing.Queue / collections.deque

在這里插入圖片描述

相比 list 實(shí)現(xiàn)的隊(duì)列,deque 擁有更低的時(shí)間和空間復(fù)雜度。list 實(shí)現(xiàn)在出隊(duì)(pop)和插入(insert)時(shí)的空間復(fù)雜度大約為O(n),deque 在出隊(duì)(pop)和入隊(duì)(append)時(shí)的時(shí)間復(fù)雜度是O(1)。 所以 deque 更有優(yōu)越性,而且 deque 既可以表示隊(duì)列又可以表示棧。

in 操作符

q = collections.deque([1, 2, 3, 4])
print(5 in q)  # False
print(1 in q)  # True

rotate 旋轉(zhuǎn)

# 順時(shí)針
q = collections.deque([1, 2, 3, 4])
q.rotate(1)
print(q)  # [4, 1, 2, 3]
q.rotate(1)
print(q)  # [3, 4, 1, 2]
# 逆時(shí)針
q = collections.deque([1, 2, 3, 4])
q.rotate(-1)
print(q)  # [2, 3, 4, 1]
q.rotate(-1)
print(q)  # [3, 4, 1, 2]

copy

 d.append(1)
 d.append(2)
 deque([1, 2])
 d1 = d.copy()
 deque([1, 2])

extend

 d.clear()
 d.append(1)
 d.extend([3,4,5])
 deque([1, 3, 4, 5])

extendleft

 d.clear()
 d.append(1)
 d.extendleft([3,4,5])
deque([5, 4, 3, 1])

index

 d.extend(["a","b","c","d","e","f"])
deque(['a', 'b', 'c', 'd', 'e','f'])
 d.index("c",0,4) #指定查找的區(qū)間
 d.index("c",0,2)
error...
d.insert(位置,元素)  在指定位置插入元素
d.remove(元素)   刪除指定元素
d.reverse   隊(duì)列翻轉(zhuǎn) 

請(qǐng)定義一個(gè)隊(duì)列并實(shí)現(xiàn)函數(shù) max_value 得到隊(duì)列里的最大值,要求函數(shù)max_value、push_back 和 pop_front 的均攤時(shí)間復(fù)雜度都是O(1)。

若隊(duì)列為空,pop_front 和 max_value 需要返回 -1

輸入: [“MaxQueue”,“push_back”,“push_back”,“max_value”,“pop_front”,“max_value”] [[],[1],[2],[],[],[]] 輸出: [null,null,null,2,1,2]

既然時(shí)間復(fù)雜度是O(1)

from collections import deque
class MaxQueue:
    def __init__(self):
        self.d = deque()
    def max_value(self) -> int:
        return max(self.d) if self.d else -1
    def push_back(self, value: int) -> None:
        self.d.append(value)
    def pop_front(self) -> int:
        return self.d.popleft() if self.d else -1

到此這篇關(guān)于python中的deque雙向隊(duì)列詳解的文章就介紹到這了,更多相關(guān)deque雙向隊(duì)列內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python+PyQt5編寫一個(gè)批量圖片添加水印工具(附源碼)

    Python+PyQt5編寫一個(gè)批量圖片添加水印工具(附源碼)

    這篇文章主要為大家詳細(xì)介紹了如何基于PyQt5開發(fā)的批量圖片水印添加工具,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2026-02-02
  • 基于python求兩個(gè)列表的并集.交集.差集

    基于python求兩個(gè)列表的并集.交集.差集

    這篇文章主要介紹了基于python求兩個(gè)列表的并集.交集.差集,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-02-02
  • 基于Python實(shí)現(xiàn)計(jì)算納什均衡的示例詳解

    基于Python實(shí)現(xiàn)計(jì)算納什均衡的示例詳解

    納什均衡是一種博弈論中的概念,它描述了一種平衡狀態(tài),其中每個(gè)參與者都不能通過獨(dú)立改變其決策來提高自己的利益。本文就來用Python中的Nashpy和PuLP實(shí)現(xiàn)計(jì)算納什均衡,感興趣的可以了解一下
    2023-02-02
  • 判斷python字典中key是否存在的兩種方法

    判斷python字典中key是否存在的兩種方法

    這篇文章主要介紹了判斷python字典中key是否存在的兩種方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-08-08
  • Python使用openpyxl與pandas讀取Excel文件的對(duì)比詳解

    Python使用openpyxl與pandas讀取Excel文件的對(duì)比詳解

    在 Python 數(shù)據(jù)處理與分析場景中,Excel 文件作為經(jīng)典的數(shù)據(jù)存儲(chǔ)格式,其讀取與操作效率直接影響開發(fā)流程,openpyxl具備精細(xì)化操作單元格、樣式設(shè)置、圖表編輯等底層能力;而 pandas 依托強(qiáng)大的數(shù)據(jù)結(jié)構(gòu)與矢量化運(yùn)算,本文對(duì)兩種工具進(jìn)行全方位對(duì)比
    2025-12-12
  • Python尋找路徑和查找文件路徑的示例

    Python尋找路徑和查找文件路徑的示例

    今天小編就為大家分享一篇Python尋找路徑和查找文件路徑的示例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-07-07
  • Python代碼使用 Pyftpdlib實(shí)現(xiàn)FTP服務(wù)器功能

    Python代碼使用 Pyftpdlib實(shí)現(xiàn)FTP服務(wù)器功能

    FTP 服務(wù)器,在此之前我都是使用Linux的vsftpd軟件包來搭建FTP服務(wù)器的,現(xiàn)在發(fā)現(xiàn)了利用pyftpdlib可以更加簡單的方法即可實(shí)現(xiàn)FTP服務(wù)器的功能 ,需要的朋友可以參考下
    2019-07-07
  • python 爬蟲爬取京東ps4售賣情況

    python 爬蟲爬取京東ps4售賣情況

    這篇文章主要介紹了python 如何用爬蟲爬取京東ps4售賣情況,幫助大家更好的利用python爬取自己想要的數(shù)據(jù),感興趣的朋友可以了解下
    2020-12-12
  • python 遍歷pd.Series的index和value

    python 遍歷pd.Series的index和value

    今天小編就為大家分享一篇python 遍歷pd.Series的index和value,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-11-11
  • python生成器表達(dá)式和列表解析

    python生成器表達(dá)式和列表解析

    最近在學(xué)習(xí)python的過程中,對(duì)列表解析及生成器表達(dá)式有點(diǎn)疑惑。從表面上看,兩者很相似,只有一點(diǎn)不同:列表解析采用中括號(hào)[]來包含,生成器表達(dá)式采用小括號(hào)()來包含。本文我們就來詳細(xì)看下python生成器表達(dá)式和列表解析
    2016-03-03

最新評(píng)論

尼勒克县| 平遥县| 五家渠市| 文化| 建水县| 南城县| 军事| 利津县| 茂名市| 吉木乃县| 绥芬河市| 巴马| 乌兰浩特市| 苏尼特右旗| 东阿县| 新晃| 宾川县| 彝良县| 佛教| 辽阳县| 龙南县| 井研县| 九江市| 柘城县| 鱼台县| 独山县| 山阳县| 安龙县| 黔西县| 花垣县| 浠水县| 历史| 大厂| 房产| 呼图壁县| 甘肃省| 桐城市| 靖远县| 枝江市| 招远市| 合肥市|