python實現鏈佇列

2021-10-07 00:07:49 字數 1103 閱讀 7993

在寫鏈佇列之前,我們需要知道佇列元素進出的原則為「先進先出」。

class

node()

:#結點類

def__init__

(self,elem)

: self.elem = elem # 資料域,用來存放資料元素

self.

next

=none

# 指標域,指向下乙個結點

class

queue()

:# 佇列

def__init__

(self)

:# 佇列初始化

self.head =

none

# 構造私有頭結點

defis_empty

(self)

:# 判空佇列

if self.head ==

none

:return

true

else

:return

false

defenqueue

(self,elem)

:# 進佇列(正常向後填元素)

node = node(elem)

# 建立新結點

if self.is_empty():

# 如果為空,作為第乙個結點

node.

next

= self.head

self.head = node

else

: top = self.head

while top.

next

isnot

none

: top = top.

next

top.

next

= node

defdequeue

(self)

:# 出佇列(頭出)

top = self.head

self.head =

none

self.head = top.

next

return top.elem

鏈佇列C 實現

鏈佇列時建立在單鏈表的基礎之上的。由於是動態分配節點記憶體,所以無需判滿。鏈佇列的形式如下 1 佇列空 2 佇列存在資料 下面介紹下c 實現的鏈佇列,vc6下除錯通過。1 檔案組織 2 lq.h鏈佇列類的說明 cpp view plain copy print?ifndef lq h define ...

鏈佇列之C 實現

鏈佇列時建立在單鏈表的基礎之上的。由於是動態分配節點記憶體,所以無需判滿。鏈佇列的形式如下 1 佇列空 2 佇列存在資料 下面介紹下c 實現的鏈佇列,vc6下除錯通過。1 檔案組織 2 lq.h鏈佇列類的說明 ifndef lq h define lq h typedef int datatype ...

演算法設計 鏈棧和鏈佇列 鏈棧和鏈佇列的實現

1.鏈佇列。利用帶有頭結點的單鏈表來實現鏈佇列,插入和刪除的複雜度都為o 1 include include typedef struct qnode qnode typedef struct linkqueue linkqueue void initialize linkqueue linkque...