資料結構2 2 佇列

2021-10-17 09:03:03 字數 1209 閱讀 4902

本文是介紹關於佇列的基礎知識,以及其stl 佇列的使用。

佇列是乙個十分具體的資料結構,佇列滿足先進先出(fifo)的基本規則。佇列如同其名字一樣,就像是儲存的資料排成一隊。

佇列的模型可以使用陣列或者鍊錶作為儲存方式,構造佇列的資料結構。

陣列模擬佇列**:

int q[maxn]

;int front = maxn/2-

1, back = front;

在模擬佇列時不要直接將首元素作為佇列起點,可以避免在往隊首插入元素造成的陣列溢位問題。

鍊錶模擬**:

struct node

;node *root =

new node;

node *front = root ,

*back =root;

在鍊錶模擬時最好選擇雙向鍊錶,可以便於佇列的操作。

功能函式名

返回值型別

判斷佇列是否為空

empty()

bool

佇列內元素數量

size()

int元素進隊

push(int n)

void

隊首元素出隊

pop()

void

顯示隊首元素

front()

template t

顯示隊尾元素

back()

template t

c++ stl中包含了佇列的庫,可以直接使用該資料結構,需要包含以下標頭檔案:

#include

stl佇列部分函式:

功能函式名

返回值型別

判斷佇列是否為空

empty()

bool

佇列內元素數量

size()

int元素進隊

push(int n)

void

隊首元素出隊

pop()

void

顯示隊首元素

front()

template t

顯示隊尾元素

back()

template t

資料結構5 佇列

5.1簡介 佇列 queue 和堆疊一樣是一種有序鍊錶,屬於抽象資料型別。不同在於是先進先出 first in,first out,fifo 堆疊只需要乙個top指標指向堆疊頂端即可,但是佇列必須使用front和rear兩個指標分別指向佇列的前端和尾端。基本操作 1 create 建立空佇列 2 a...

資料結構(二) 佇列

一 佇列定義 佇列是限定在一端進行插入,另一端進行刪除特殊線性表。二 佇列基本操作 入隊出隊 三 佇列例題 1.例1 舞伴配對問題 分析 這一題是一道經典的取模運算,每一次將編號往前加一位,到達n就取模。include include include include int main return ...

資料結構 七 佇列

1 佇列需要具備的特性 佇列和棧的底層實現資料結構可以是 陣列 鍊錶,只不過在此基礎上,佇列和棧需要過載兩個函式 節點的插入與刪除函式。佇列只能從煉表頭刪除節點,從鍊錶末尾插入節點 2 示例 ifndef data struct queue h define data struct queue h ...