亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

python 隊列基本定義與使用方法【初始化、賦值、判斷等】

 更新時間:2019年10月24日 09:37:32   作者:鯨落丶  
這篇文章主要介紹了python 隊列基本定義與使用方法,結合實例形式分析了Python隊列的定義、初始化、賦值、判斷等相關操作技巧,需要的朋友可以參考下

本文實例講述了python 隊列基本定義與使用方法。分享給大家供大家參考,具體如下:

隊列的特征是:先進先出

應用場景:消息通信、多進程間的協(xié)同、多線程間的協(xié)同等

在隊列中需要設計的實例屬性:head節(jié)點、tail節(jié)點

需要設計的實例方法有兩個:分別是入隊隊列enqueue和出隊隊列dequeue

# -*- coding:utf-8 -*-
#! python3
class Node(object):   #節(jié)點,包括兩個屬性,一個是節(jié)點的值,一個是節(jié)點的下一個指向
  def __init__(self,value):
    self.value = value  #節(jié)點的值
    self.next = None   #節(jié)點的下一個指向
class Queue(object):    #隊列這個類
  def __init__(self):   #初始化這個隊列
    self.first = None   #隊列的首尾指向的節(jié)點都是None,初始化
    self.last = None
  def enter(self,n):
    packNode = Node(n)   #創(chuàng)建Node新節(jié)點實例,值為n
    if self.first == None: #如果首指向為空
      self.first = packNode    #將首指向的節(jié)點賦為傳進來的節(jié)點
      self.last = self.first   #并且將尾指向的節(jié)點賦為
    else:
      self.last.next = packNode    #如果隊列不為空,就將新的節(jié)點賦值到目前l(fā)ast的下一個位置
      self.last = packNode      #然后移動last指向,將last指向到剛才新增的節(jié)點
  def quit(self):
    if self.first == None:
      return None
    else:
      tmp = self.first.value     #如果隊列中存在值,則把隊列中第一個的值賦值給tmp
      self.first = self.first.next  #將first的指向下一個,變?yōu)閒irst指向
      return tmp
if __name__ == '__main__':
  print("------------隊列開始--------")
  q = Queue()
  # n1 = Node(1)
  # n2 = Node(2)
  # n3 = Node(3)
  q.enter(1)
  q.enter(2)
  q.enter(3)
  print(q.quit())
  print(q.quit())
  print(q.quit())
  # print(q)

運行結果:

------------隊列開始--------
1
2
3

更多關于Python相關內容感興趣的讀者可查看本站專題:《Python數(shù)據(jù)結構與算法教程》、《Python加密解密算法與技巧總結》、《Python編碼操作技巧總結》、《Python函數(shù)使用技巧總結》、《Python字符串操作技巧匯總》及《Python入門與進階經典教程

希望本文所述對大家Python程序設計有所幫助。

相關文章

  • python3實現(xiàn)ftp服務功能(服務端 For Linux)

    python3實現(xiàn)ftp服務功能(服務端 For Linux)

    這篇文章主要介紹了python3實現(xiàn)ftp服務功能,服務端 For Linux,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-03-03
  • pandas 選擇某幾列的方法

    pandas 選擇某幾列的方法

    今天小編就為大家分享一篇pandas 選擇某幾列的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-07-07
  • Python?PDF轉化wolrd代碼的寫法小結

    Python?PDF轉化wolrd代碼的寫法小結

    將PDF文件轉換為Word文檔的過程通常需要使用一些外部庫來實現(xiàn),因為Python本身并不直接支持這種轉換,這篇文章主要介紹了Python?PDF轉化wolrd代碼的寫法小結,需要的朋友可以參考下
    2024-06-06
  • python實現(xiàn)數(shù)獨算法實例

    python實現(xiàn)數(shù)獨算法實例

    這篇文章主要介紹了python實現(xiàn)數(shù)獨算法,實例分析了Python數(shù)獨算法的實現(xiàn)技巧,需要的朋友可以參考下
    2015-06-06
  • 基礎語音識別-食物語音識別baseline(CNN)

    基礎語音識別-食物語音識別baseline(CNN)

    這篇文章主要介紹了一個基礎語音識別題目-食物語音識別baseline(CNN),代碼詳細嗎,對于想要學習語音識別的朋友可以參考下
    2021-04-04
  • python常用排序算法的實現(xiàn)代碼

    python常用排序算法的實現(xiàn)代碼

    這篇文章主要介紹了python常用排序算法的實現(xiàn)代碼,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-11-11
  • Django框架安裝及項目創(chuàng)建過程解析

    Django框架安裝及項目創(chuàng)建過程解析

    這篇文章主要介紹了Django框架安裝及項目創(chuàng)建過程解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-09-09
  • Python實現(xiàn)Tab自動補全和歷史命令管理的方法

    Python實現(xiàn)Tab自動補全和歷史命令管理的方法

    這篇文章主要介紹了Python實現(xiàn)Tab自動補全和歷史命令管理的方法,實例分析了tab自動補全的實現(xiàn)技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-03-03
  • Python3 實現(xiàn)遞歸求階乘

    Python3 實現(xiàn)遞歸求階乘

    這篇文章主要介紹了Python3 實現(xiàn)遞歸求階乘的操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-03-03
  • OpenCV-Python使用cv2實現(xiàn)傅里葉變換

    OpenCV-Python使用cv2實現(xiàn)傅里葉變換

    在OpenCV中,我們通過cv2.dft()來實現(xiàn)傅里葉變換,使用cv2.idft()來實現(xiàn)逆傅里葉變換。本文就詳細的介紹一下這兩種用法,感興趣的可以了解一下
    2021-06-06

最新評論