1. 程式人生 > >佇列便捷函式:queue函式

佇列便捷函式:queue函式

學過佇列應該知道佇列的操作主要有

判空
進隊
出隊
隊長

我們在用時得先自己建好這些函式,而queue函式這個函式就包含了進隊,出隊,隊長,判空…
我從別的地方複製一下主要用法:

**在C++中只要#include<queue>即可使用佇列類。**

1. push

2. pop

3. size

4. empty

5. front

6. back

接下來逐一舉例說明:

1. push

佇列中由於是先進先出,push即在隊尾插入一個元素,如:

1 queue<string> q;
2 q.push("Hello World!");
3 q.push("China");
4 cout<<q.front()<<endl;

可以輸出:Hello World!

2. pop

將佇列中最靠前位置的元素拿掉,是沒有返回值的void函式。如:

1 queue<string> q;
2 q.push("Hello World!");
3 q.push("China");
4 q.pop();
5 cout<<q.front()<<endl;

可以輸出:China

原因是Hello World!已經被除掉了。

3. size

返回佇列中元素的個數,返回值型別為unsigned int。如:

queue<string> q;
cout<<q.size()<<endl;
q.push("Hello World!");
q.push("China");
cout<<q.size()<<endl;

輸出兩行,分別為0和2,即佇列中元素的個數。

4. empty

判斷佇列是否為空的,如果為空則返回true。如:

1 queue<string> q;
2 cout<<q.empty()<<endl;
3 q.push("Hello World!");
4 q.push("China");
5 cout<<q.empty()<<endl;

輸出為兩行,分別是1和0。因為一開始佇列是空的,後來插入了兩個元素。

5. front

返回值為佇列中的第一個元素,也就是最早、最先進入佇列的元素。
注意這裡只是返回最早進入的元素,並沒有把它剔除出佇列。如:
複製程式碼

1 queue<string> q;
2 q.push("Hello World!");
3 q.push("China");
4 cout<<q.front()<<endl;
5 q.pop();
6 cout<<q.front()<<endl;

複製程式碼

輸出值為兩行,分別是Hello World!和China。只有在使用了pop以後,佇列中的最早進入元素才會被剔除。

6. back

返回佇列中最後一個元素,也就是最晚進去的元素。如:

1 queue<string> q;
2 q.push("Hello World!");
3 q.push("China");
4 cout<<q.back()<<endl;



輸出值為China,因為它是最後進去的。
這裡back僅僅是返回最後一個元素,也並沒有將該元素從佇列剔除掉。

總結一下:

  1. 在C++中只要#include即可使用佇列類;
  2. 定義時queue + <數列型別>(如int,char) + 佇列名;
  3. 關於back,front,如英語意思一個表示後,一個表示前。