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

詳解python數(shù)據(jù)結(jié)構(gòu)之隊(duì)列Queue

 更新時(shí)間:2021年05月08日 10:22:54   作者:jianshuilan_0613  
這篇文章主要介紹了python數(shù)據(jù)結(jié)構(gòu)之隊(duì)列Queue,文中有非常詳細(xì)的代碼示例,對(duì)正在學(xué)習(xí)python的小伙伴們有很好的幫助,需要的朋友可以參考下

一、前言

隊(duì)列Queue是一種先進(jìn)先出(FIFO,F(xiàn)irst In First Out)的線性表。允許一端進(jìn)行插入(rear),對(duì)應(yīng)的另一段進(jìn)行刪除(front)。

本篇包含以下內(nèi)容:
(1)Queue的基本格式
(2)入隊(duì)列en_queue
(3)刪除數(shù)據(jù)函數(shù) de_queue

二、Queue的基本格式

class Queue():
    def __init__(self,size):
        self.size = size 
        self.front = -1 #設(shè)置front初始值,每出隊(duì)列一個(gè)數(shù)據(jù)就加 1
        self.rear = -1 #設(shè)置rear初始值,每入隊(duì)列一個(gè)數(shù)據(jù)就加 1
        self.queue = [] #隊(duì)列中數(shù)據(jù)的列表
        
    def display_queue(self): #打印隊(duì)列數(shù)據(jù)
        print(self.queue)

if __name__ == "__main__":
    queue = Queue(6) #設(shè)置隊(duì)列queue的空間大小
    queue.display_queue() #調(diào)用打印函數(shù)

三、入隊(duì)列函數(shù) en_queue

class Queue():
    def __init__(self,size):
        self.size = size
        self.front = -1
        self.rear = -1
        self.queue = []

    def en_queue(self,data):
        if self.rear >= (self.size -1): #當(dāng)入隊(duì)列數(shù)據(jù)數(shù)量大于隊(duì)列的size,提示queue is full!
            print("queue is full!")
            return 
        self.queue.append(data) #queue有空間就將數(shù)據(jù)入隊(duì)列
        self.rear += 1 #每入隊(duì)列一個(gè)數(shù)據(jù)就加 1

    def display_queue(self):
        print(self.queue)

if __name__ == "__main__":
    queue = Queue(6)
    queue.en_queue(0)
    queue.en_queue(1)
    queue.en_queue(2)
    queue.en_queue(3)
    queue.en_queue(4)
    queue.en_queue(5)
    queue.en_queue(6) #queue空間是 6,入隊(duì)列數(shù)據(jù)有 7 個(gè),提示queue is full!
    queue.display_queue()
    

執(zhí)行結(jié)果:

在這里插入圖片描述

四、刪除數(shù)據(jù)函數(shù) de_queue

class Queue():
    def __init__(self,size):
        self.size = size
        self.front = -1
        self.rear = -1
        self.queue = []
    def en_queue(self,data):
        if self.rear >= (self.size -1):
            print("queue is full!")
            return 
        self.queue.append(data)
        self.rear += 1
    
    def de_queue(self):
        if  self.rear < 0: #rear表示隊(duì)列中數(shù)據(jù)的多少,所以當(dāng)它小于0時(shí)說(shuō)明queue中沒(méi)有數(shù)據(jù)
            print("queue is empty!")
            return
        self.front += 1 #當(dāng)queue不為空時(shí),每出隊(duì)列一個(gè)數(shù)據(jù) front就加 1
        self.queue.pop(0) #刪除最先進(jìn)來(lái)的數(shù)據(jù)
        self.rear -= 1 #刪除一個(gè)數(shù)據(jù),隊(duì)列中的數(shù)據(jù)數(shù)量就要減 1

    def display_queue(self):
        print(self.queue)

if __name__ == "__main__":
    queue = Queue(6)
    queue.en_queue(0)
    queue.en_queue(1)
    queue.en_queue(2)
    queue.en_queue(3)
    queue.en_queue(4)
    queue.en_queue(5)
    queue.display_queue()
    queue.de_queue()
    queue.display_queue()
    queue.de_queue()
    queue.display_queue()
    queue.de_queue()
    queue.display_queue()
    queue.de_queue()
    queue.display_queue()
    queue.de_queue()
    queue.display_queue()
    queue.de_queue()
    queue.display_queue()
    queue.de_queue()
    queue.display_queue() #隊(duì)列中共有 6 個(gè)數(shù)據(jù),刪除 7 個(gè)數(shù)據(jù),所以會(huì)提示queue is empty!

執(zhí)行結(jié)果:

在這里插入圖片描述

到此這篇關(guān)于詳解python數(shù)據(jù)結(jié)構(gòu)之隊(duì)列Queue的文章就介紹到這了,更多相關(guān)python隊(duì)列Queue內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python3+PyQt5實(shí)現(xiàn)支持多線程的頁(yè)面索引器應(yīng)用程序

    python3+PyQt5實(shí)現(xiàn)支持多線程的頁(yè)面索引器應(yīng)用程序

    這篇文章主要為大家詳細(xì)介紹了python3+PyQt5實(shí)現(xiàn)支持多線程的頁(yè)面索引器應(yīng)用程序,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-04-04
  • 安裝pycurl報(bào)錯(cuò)Could not run curl-config: 'curl-config'

    安裝pycurl報(bào)錯(cuò)Could not run curl-config: &ap

    這篇文章主要為大家介紹了安裝pycurl報(bào)錯(cuò)Could not run curl-config: 'curl-config'解決方法,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-12-12
  • Python學(xué)習(xí)筆記(二)基礎(chǔ)語(yǔ)法

    Python學(xué)習(xí)筆記(二)基礎(chǔ)語(yǔ)法

    對(duì)于任何一門語(yǔ)言的學(xué)習(xí),學(xué)語(yǔ)法是最枯燥無(wú)味的,但又不得不學(xué),基礎(chǔ)概念較繁瑣,本文將不多涉及概念解釋,用例子進(jìn)行相關(guān)解析,適當(dāng)與C語(yǔ)言對(duì)比,避免陷入語(yǔ)法的苦海。我認(rèn)為初學(xué)者學(xué)習(xí)語(yǔ)法的目標(biāo)是學(xué)會(huì)使用即可,關(guān)于對(duì)概念的深入理解,剖析,沒(méi)有一定的知識(shí)積累是很難做到的。
    2014-06-06
  • 分享15 超級(jí)好用得 Python 實(shí)用技巧

    分享15 超級(jí)好用得 Python 實(shí)用技巧

    這篇文章主要分享了15 超級(jí)好用得 Python 實(shí)用技巧,如果你對(duì)其中一個(gè)或多個(gè)感興趣,可以參考一下,希望對(duì)你能有所幫助
    2021-12-12
  • 詳解pytest分布式執(zhí)行插件?pytest-xdist?的高級(jí)用法

    詳解pytest分布式執(zhí)行插件?pytest-xdist?的高級(jí)用法

    這篇文章主要介紹了pytest分布式執(zhí)行插件?pytest-xdist?的高級(jí)用法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-08-08
  • Python實(shí)現(xiàn)生成多種有規(guī)律的數(shù)字序列

    Python實(shí)現(xiàn)生成多種有規(guī)律的數(shù)字序列

    在?Python?編程中,生成數(shù)字序列是一項(xiàng)常見(jiàn)且重要的任務(wù),本文將深入探討如何使用Python中的內(nèi)置函數(shù)、列表推導(dǎo)式、生成器等方式來(lái)生成多種有規(guī)律的數(shù)字序列,需要的可以參考下
    2024-03-03
  • python實(shí)現(xiàn)將Excel文件轉(zhuǎn)換為JSON文件

    python實(shí)現(xiàn)將Excel文件轉(zhuǎn)換為JSON文件

    在數(shù)據(jù)處理和分析中,Excel和JSON是兩種常見(jiàn)的數(shù)據(jù)格式,本文將詳細(xì)介紹如何使用Python將Excel文件轉(zhuǎn)換為JSON文件,我們將使用pandas庫(kù),這是一個(gè)強(qiáng)大的數(shù)據(jù)分析工具,能夠方便地讀取和處理各種數(shù)據(jù)格式,需要的朋友可以參考下
    2024-07-07
  • pytorch+torchvision+python版本對(duì)應(yīng)及環(huán)境安裝

    pytorch+torchvision+python版本對(duì)應(yīng)及環(huán)境安裝

    本文主要介紹了pytorch+torchvision+python版本對(duì)應(yīng)及環(huán)境安裝,安裝過(guò)程中需要注意Numpy版本的降級(jí),以確保與PyTorch兼容,具有一定的參考價(jià)值,感興趣的可以了解一下
    2025-03-03
  • python內(nèi)置函數(shù)之eval函數(shù)詳解

    python內(nèi)置函數(shù)之eval函數(shù)詳解

    這篇文章主要為大家介紹了python內(nèi)置函數(shù)之eval函數(shù),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助
    2022-01-01
  • openCV入門學(xué)習(xí)基礎(chǔ)教程第三篇

    openCV入門學(xué)習(xí)基礎(chǔ)教程第三篇

    pencv是用于快速處理圖像處理、計(jì)算機(jī)視覺(jué)問(wèn)題的工具,支持多種語(yǔ)言進(jìn)行開(kāi)發(fā)如c++、python、java等,下面這篇文章主要給大家介紹了關(guān)于openCV入門學(xué)習(xí)基礎(chǔ)教程的相關(guān)資料,需要的朋友可以參考下
    2022-11-11

最新評(píng)論

高邑县| 诸城市| 黔西| 进贤县| 四会市| 金川县| 普安县| 当雄县| 晋宁县| 金沙县| 凭祥市| 安阳市| 亳州市| 如东县| 石林| 彭山县| 汶上县| 通辽市| 三都| 沙坪坝区| 平江县| 嘉善县| 洛隆县| 灌阳县| 新河县| 光山县| 墨竹工卡县| 自治县| 双城市| 龙门县| 崇州市| 津南区| 休宁县| 富民县| 莫力| 乌兰浩特市| 易门县| 德清县| 洪江市| 商洛市| 塘沽区|