1. 程式人生 > 其它 >queue佇列的用法

queue佇列的用法

技術標籤:C++c++

C++中queue佇列的用法

小菜雞一枚,C++才剛剛學了半年,有錯誤的地方歡迎指出!!!

首先,要有標頭檔案:
#include<queue>
定義方法:
queue <TYPE> M //M是變數名
接下來是常見的函式:
M.push() 在已有元素後增加括號中元素
M.size() 輸出M中元素的個數
M.empty() 檢視是否為空,是的話返回1,不是則返回0
M.front() 顯示第一個元素
M.back() 顯示最後一個元素
M.pop() 消除第一個元素

emmm,基本知識大概就這麼多了,然後我就開始寫程式碼,一個一個的用這些函式,然後就是。。。

悲傷

The First Try!(失敗)

#include <iostream>
#include <queue>
using namespace std;
int main()
{
	queue <int> list;
	for(int i=0;i<5;i++)
	list.push(i);
	for (int i=0;i<5;i++)
	cout<<list.front();
	
	return 0;
} 

那個那個M.front()不都說了是顯示第一個元素的了嘛,迴圈那是整的啥,真的是,想錘爆自己!還要有一個M.pop()這樣才行嘛,把第一個依次刪掉,然後再顯示不就好了嘛。

還有還有,為啥我還沒有輸入它就自己輸出完了呢???應該沒問題吧。(有點心虛,畢竟我很菜。。。)

嗷嗷嗷,知道了,那個M.push(i),是把i接到M後面

The Scond!

#include <iostream>
#include <queue>
using namespace std;
int main()
{
	queue <int> list;
	for(int i=0;i<5;i++)
	list.push(i);
	for (int i=0;i<5;i++)
	{
		cout<<list.front();
		list.pop();
	} 
	
	
	return 0;
} 

o,成功了!這樣就搞清楚了這三個函式的用法,但是隻能接一個數字嗎?不能接一串嗎?

emmm,查了一下,是資料結構的內容,我還沒學,嗚嗚嗚嗚嗚

下學期學了之後,再補充吧,哎

Queue容器是一種先進先出(FIFO-first in first out)的資料結構。它有兩個出口

Queue容器允許從一端新增元素,從另一端移除元素。

Queue容器中,只有隊頭和隊尾允許訪問,其餘不允許訪問。

佇列進資料稱為入隊----push()

隊列出資料稱為出隊----pop()

可以看一下這個,可能會清楚一點