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

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

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

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

隊(duì)列的特征是:先進(jìn)先出

應(yīng)用場(chǎng)景:消息通信、多進(jìn)程間的協(xié)同、多線程間的協(xié)同等

在隊(duì)列中需要設(shè)計(jì)的實(shí)例屬性:head節(jié)點(diǎn)、tail節(jié)點(diǎn)

需要設(shè)計(jì)的實(shí)例方法有兩個(gè):分別是入隊(duì)隊(duì)列enqueue和出隊(duì)隊(duì)列dequeue

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

運(yùn)行結(jié)果:

------------隊(duì)列開始--------
1
2
3

更多關(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)典教程

希望本文所述對(duì)大家Python程序設(shè)計(jì)有所幫助。

相關(guān)文章

最新評(píng)論