演算法筆記 佇列

2021-10-24 12:25:29 字數 578 閱讀 7218

佇列:先進先出

食堂裡打飯,先入隊的人(排在最前的人)則最早打飯出隊。

用隊首指標front(出隊)來指向隊首元素的前乙個位置,而rear(入隊)隊尾指標來指向隊尾元素;

當用陣列來實現佇列時,隊首指標front和隊尾指標rear為int變數(陣列下標從0開始),

而使用鍊錶來實現佇列時,則為int*型變數的指標

下面是用陣列q來實現佇列,用int型變數front來存放隊首元素的前乙個元素的下標,而rear來指存放隊尾元素的下標(陣列下標從0開始)

初始狀態front=rear=-1

(沒有元素時,rear指向-1,佇列有1個元素,rear指向0)

1.出隊操作、取隊尾和隊首元素操作碧璽在佇列非空的情況下才能使用,因此在使用pop()函式,get_front()和get_rear()之前必須使用empty()來判斷佇列是否為空

2.另外,佇列的清空—while迴圈反覆pop出元素直至隊列為空

while

(!q.

empty()

)

演算法筆記 佇列

是什麼 什麼是佇列 為什麼為什麼有佇列這種資料結構 怎麼學習佇列這種資料結構 順序佇列class arrayqueue 入隊 public boolean enqueue string item last last first first 0 queuelist last item last ret...

演算法筆記 佇列

1 佇列是乙個有序列表,可以用陣列或鍊錶來實現.2 遵循先入先出原則.即 先存入佇列的資料,要先取出來.後存入後取.模擬火車進隧道 3 佇列的插入操作稱為入隊 push 刪除操作稱為出隊 pop 4 示意圖 使用陣列模擬佇列示意圖 5 由於普通佇列會產生 假溢位 現象,所以我們採用環形佇列來解決這個...

演算法筆記 佇列概念

佇列 queue 時一種先進先出的資料結構 以食堂排隊打飯為例,每個人都從隊伍最後面排起,隊伍最前面的人打完飯出隊 佇列總是從隊尾加入元素,而從隊首移除元素,滿足先進先出的規則 注意!使用乙個隊首元素front來指向隊首元素的前乙個位置 使用乙個隊尾指標rear來指向隊尾元素 和棧類似,當使用陣列來...