佇列主要的操作
q.
empty
() 如果隊列為空返回true,否則返回false
q.size
() 返回佇列中元素的個數
q.pop
() 刪除佇列首元素但不返回其值
q.front
() 返回隊首元素的值,但不刪除該元素
q.push
() 在隊尾壓入新元素
q.back
() 返回佇列尾元素的值,但不刪除該元素
如果要使用標準庫的棧和佇列時,先包含相關的標頭檔案
#include
//定義佇列q
queue q;
引用上述部落格:
1、佇列(queue)與棧一樣,是一種線性儲存結構,它具有如下特點:
(1)佇列中的資料元素遵循「先進先出」(first in first out)的原則,簡稱fifo結構;
(2)在隊尾新增元素,在隊頭刪除元素。
(1)隊頭與隊尾: 允許元素插入的一端稱為隊尾,允許元素刪除的一端稱為隊頭;
(2)入隊:佇列的插入操作;
(3)出隊:佇列的刪除操作。
3、佇列的操作:
(1)入隊: 通常命名為push()
(2)出隊: 通常命名為pop()
(3)求佇列中元素個數
(4)判斷佇列是否為空
(5)獲取隊首元素
4、佇列的分類:
(1)基於陣列的迴圈佇列(迴圈佇列)
(2)基於鍊錶的佇列(鏈佇列)
5、例項分析
(1)基於陣列的迴圈佇列(迴圈佇列)
(2)基於鍊錶的佇列(鏈佇列)
資料結構 C 實現之佇列結構
佇列本質上是特殊的線性表,它是在一端 隊頭 進行刪除操作,另一端 隊尾 進行插入操作,遵守先進先出規則 fifo 既然佇列也是線性表,當然也有兩種資料儲存方式 順序儲存結構,這種結構事先要基本確定佇列的大小,不支援動態分配儲存空間,所以插入和刪除元素比較省時,但是會造成空間的浪費。為了節省空間,後來...
資料結構之佇列 C 實現
佇列很重要的一點就是入隊在隊尾進行,出隊在隊首進行,所以又把佇列稱為先進先出表。功能實現 1.入隊功能 使用鍊錶實現 include iostream using namespace std typedef struct studentnode typedef struct linkqueue qu...
C 資料結構之Queue(佇列)
queue,佇列,和我們日常生活中的佇列是同樣的規則,先進先出 從尾入,從首出。有外加的一些操作如 full 佇列是否已滿 serve and retrieve 檢視隊首元素同時去除 等等。在eclipse執行通過 h標頭檔案 queue.h created on 2015年8月22日 author...