欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

詳解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í)說明queue中沒有數(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)來的數(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)文章

  • Python中ROC曲線繪制

    Python中ROC曲線繪制

    大家好,本篇文章主要講的是Python中ROC曲線繪制,感興趣的同學(xué)趕快來看一看吧,對(duì)你有幫助的話記得收藏一下,方便下次瀏覽
    2021-12-12
  • Python中的二分查找Bisect庫(kù)使用實(shí)戰(zhàn)

    Python中的二分查找Bisect庫(kù)使用實(shí)戰(zhàn)

    在算法和數(shù)據(jù)結(jié)構(gòu)中,二分查找是一種高效的搜索算法,可用于有序數(shù)據(jù)集合的查找,Python的bisect庫(kù)為我們提供了便捷的二分查找實(shí)現(xiàn),本文將深入探討B(tài)isect庫(kù)的使用方法、性能優(yōu)勢(shì),并通過豐富的示例代碼展示其在實(shí)際應(yīng)用中的靈活性和效果
    2024-01-01
  • python?OpenCV實(shí)現(xiàn)圖像特征匹配示例詳解

    python?OpenCV實(shí)現(xiàn)圖像特征匹配示例詳解

    這篇文章主要為大家介紹了python?OpenCV實(shí)現(xiàn)圖像特征匹配示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-04-04
  • python如何使用python-docx調(diào)整Word文檔樣式

    python如何使用python-docx調(diào)整Word文檔樣式

    本文介紹了如何修改文字字體樣式、對(duì)齊樣式、行間距以及段前段后間距,并通過效果展示給出參考,適用于需要進(jìn)行文檔編輯的讀者
    2024-09-09
  • Win10 GPU運(yùn)算環(huán)境搭建(CUDA10.0+Cudnn 7.6.5+pytroch1.2+tensorflow1.14.0)

    Win10 GPU運(yùn)算環(huán)境搭建(CUDA10.0+Cudnn 7.6.5+pytroch1.2+tensorflow1.

    熟悉深度學(xué)習(xí)的人都知道,深度學(xué)習(xí)是需要訓(xùn)練的,本文主要介紹了Win10 GPU運(yùn)算環(huán)境搭建,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-09-09
  • Python圖像處理之圖像增廣算法詳解

    Python圖像處理之圖像增廣算法詳解

    圖像增廣算法在計(jì)算機(jī)視覺領(lǐng)域扮演著至關(guān)重要的角色,本文將著重介紹圖像增廣算法中的三個(gè)關(guān)鍵方面:圖像旋轉(zhuǎn)、圖像亮度調(diào)整以及圖像裁剪與拼接,感興趣的可以了解一下
    2023-05-05
  • PySide和PyQt加載ui文件的兩種方法

    PySide和PyQt加載ui文件的兩種方法

    這篇文章主要為大家詳細(xì)介紹了PySide和PyQt加載ui文件的兩種方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-02-02
  • Python腳本讀取Consul配置信息的方法示例

    Python腳本讀取Consul配置信息的方法示例

    本文主要介紹了Python腳本讀取Consul配置信息的方法示例,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-11-11
  • 使用BeautifulSoup爬蟲程序獲取百度搜索結(jié)果的標(biāo)題和url示例

    使用BeautifulSoup爬蟲程序獲取百度搜索結(jié)果的標(biāo)題和url示例

    這篇文章主要介紹了使用BeautifulSoup編寫了一段爬蟲程序獲取百度搜索結(jié)果的標(biāo)題和url的示例,大家參考使用吧
    2014-01-01
  • Pandas實(shí)現(xiàn)自定義Excel格式并導(dǎo)出多個(gè)sheet表

    Pandas實(shí)現(xiàn)自定義Excel格式并導(dǎo)出多個(gè)sheet表

    pandas默認(rèn)整合XlsxWriter驅(qū)動(dòng),可以自動(dòng)化處理excel操作,并提供公式、設(shè)置單元格格式、可視化分析圖片等操作,本文就來和大家詳細(xì)聊聊
    2023-05-05

最新評(píng)論