STL容器是哆啦A梦的口袋~~
0、queue容器内元素的访问
#include <stdio.h>
#include <queue>
using namespace std;
int main(){
queue<int>q;
for(int i = 1;i <=5;i++){
q.push(i);
}
printf("%d %d\n",q.front(),q.back());
return 0;
}
1、常用函数
pop
#include <stdio.h>
#include <queue>
using namespace std;
int main(){
queue<int>q;
for(int i = 1;i <= 5;i++){
q.push(i);
}
for(int i = 1;i <= 3;i++){
q.pop();//不能写q.pop(i),因为弹出始终是队列头
}
printf("%d\n",q.front());
return 0;
}
empty()
#include <stdio.h>
#include <queue>
using namespace std;
int main(){
queue<int>q;
if(q.empty() == true){
printf("Empty\n");
}
else{
printf("Not Empty\n");
}
q.push(1);
if(q.empty() == true){
printf("Empty\n");
}
else{
printf("Not Empty\n");
}
return 0;
}
size() 返回队列中元素的个数
#include <stdio.h>
#include <queue>
using namespace std;
int main(){
queue<int>q;
for(int i = 1;i <= 5;i++){
q.push(i);
}
printf("%d\n",q.size());
return 0;
}
常见用途:实现广度优先搜索时,可以不用自己手动实现一个队列,使用queue
另外,使用front()和pop()函数前,必须用empty()判断队列是否为空