佇列 佇列的基本操作總結

2021-09-25 22:15:20 字數 928 閱讀 9617

目錄

queue的常見用法

priority_queue的常見用法

佇列是一種先進先出的資料結構,通常用乙個隊首元素front指向隊首元素的前乙個位置,而使用隊尾指標來指向隊尾元素。

清空(clear):

/*使用陣列來實現佇列是,初始狀態為front=-1,rear=-1*/

void clear()

獲得佇列中的元素個數(size):

/*rear-front是佇列內元素的個數*/

int size()

判空(empty):

/*若rear等於front,則隊列為空*/

bool empty()

入隊(push):

/*入隊,由於指標rear指向隊尾元素,因此把元素入隊時,需要先把rear+1,在存放到rear指向的位置*/

void push(int x)

出隊(pop):

/*直接把隊首指標加1來實現出隊效果*/

void pop()

取隊首元素(get_front):

/*由於隊首指標front指向的隊首元素的前乙個元素,因此front+1才是隊首元素的位置*/

int get_front()

取隊尾元素(get_rear):

/*由於隊尾指標rear指向的隊尾元素,因此直接訪問rear是隊尾元素的位置*/

int get_rear()

stl容器中的queue和priority queue的實現方式:

棧、佇列的stl實現

棧的佇列(佇列)

二.關於佇列的簡單實現。順序佇列的基本實現和順序棧的實現基本相似。順序佇列在出列和入列的時候會使佇列整體向上移動,會浪費一定的空間。因此出現了一種佇列叫做迴圈佇列。迴圈佇列可以實現空間的重複利用,大大節省了空間。關於迴圈佇列的實現 建立乙個空佇列 struct node struct node in...

資料結構之棧和佇列 佇列的基本操作

問題 實現佇列的基本操作,內容包括佇列的結構體,佇列的初始化,佇列的銷毀,進隊操作及出隊操作 佇列節點的結構體 typedef struct qnode qnode,qpoint 佇列鏈的結構體 typedef struct linkqueue linkqueue 佇列的初始化 lq front分配...

棧和佇列 佇列

佇列 又一種特殊的線性表 佇列 queue 是只允許在一端進行插入,而在另一端進行刪除的運算受限的線性表 允許刪除的一端稱為隊頭 front 允許插入的一端稱為隊尾 rear 當佇列中沒有元素時稱為空佇列。佇列的修改是依先進先出的原則進行的。新來的成員總是加入隊尾 即不允許 加塞 每次離開的成員總是...