Python實現佇列

2022-09-02 10:48:09 字數 1261 閱讀 4054

佇列的資料結構的主要結構:乙個結點類和兩個方法:出佇列和進佇列

class node(object):

def __init__(self,val):

self.val = val

self.next = none

class myqueue(object):

def __init__(self):

self.first = none

self.last = none

def put(self, n):

packnode = node(n)

if self.first == none:

self.first = packnode

self.last = packnode

else:

self.last.next = packnode

self.last = packnode

def get(self):

if self.first==none:

return none

elif self.first==self.last:

tmp=self.first.val

self.first,self.last=self.first.next,self.first.next

return tmp

else:

tmp=self.first.val

self.first=self.first.next

return tmp

if __name__ == '__main__':

q = myqueue()

q.put(1)

print q.first.val

print q.last.val

q.put(2)

print q.first.val

print q.last.val

print q.get()

演算法分析:

每乙個結點包含當前結點的值和下乙個結點的例項(下個結點的值和下下個結點的例項),這樣才串成佇列

2、在另乙個類:佇列。定義兩個變數:指向佇列的開頭和結尾的結點例項

3、對佇列操作的兩個方法:

(1)入佇列:

和佇列中建立連線:例項化乙個結點資訊,賦值給 佇列結尾的結點的next變數;

加入到佇列結尾:然後把佇列結尾的值賦值為例項化的那個結點

(2)出佇列:

把佇列開頭的結點賦值為下乙個結點例項;

返回複製前的例項的值(val)

python 清空佇列 python實現 佇列

佇列 佇列的乙個特性是 先進先出 first in first out,fifo python中,同樣可以使用列表來儲存佇列的資料。通過建立乙個佇列類,便可以方便的對佇列進行操作。主要有 入隊 in 出隊 out 清空佇列 empty 設定佇列大小 setsize 獲取隊尾位置 getend 等 p...

佇列(python實現)

adt queue queue self 建立空佇列 is empty self 判斷佇列是否為空 enqueue self,elem 入隊 dequeue self 出隊 peek self 檢視最早入隊的元素,不刪除class queueunderflow valueerror 空佇列訪問 pa...

Python實現佇列

佇列 是一種特殊的線性表,特殊之處在於它只允許在表的前端 front 進行刪除操作,而在表的後端 rear 進行插入操作,和棧一樣,佇列是一種操作受限制的線性表。進行插入操作的端稱為隊尾,進行刪除操作的端稱為隊頭。特點 先進先出。class queue object def init self se...