隊列(queue)和棧一樣支持push和pop兩個操作。但與棧不同的是,pop兩個操作。但與棧的不同的是,pop完成的不是取出最頂端的元素,而是最底端的元素。也就是說最初放入的元素能夠最先被取出(這種行為被叫做FIFO:First In First Out,即先進先出)。
如同棧一樣,C++、Java等的標準庫也預置了隊列。Java與C++中的函數的名稱與用途稍有不同,因此使用時要注意。此外,在C++中queue::front是用來訪問最底端的數據的函數。以下是使用queue的例子:
#include<queue>
#include<cstdio>
using namespace std;
int main()
{queue<int> que;//聲明存儲int類型數據的隊列que.push(1);//{}->{1}que.push(2);//{1}->{1,2}que.push(3);//{1,2}->{1,2,3}printf("%d\n", que.front());//1que.pop();//從棧頂移除{1,2,3}->{2,3}printf("%d\n", que.front());//2que.pop(); //從棧頂移除{ 2,3 }->{3}printf("%d\n", que.front());//3que.pop();//{3}->{ }return 0;
}
?
?