欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

模板——STL队列

程序员文章站 2022-04-04 23:42:44
C++ STL queue 容器优先队列&&队列 队列 优先队列(运算符重载)队首为最小元素: 优先队列,队首为最大元素: 说明: 包含: 基本操作: x.push(y);//将y元素加入x队列 x.size();//询问x队列长度 x.front()//访问队列x中最先加入的元素 x.back() ......

C++ STL queue 容器优先队列&&队列

队列

 1 #include<queue>
 2 #include<iostream>
 3 using namespace std;
 4 int main()
 5 {
 6     queue<string> x;
 7     x.empty();
 8     for(int i=1;i<=10;i++)
 9     {
10       string y;
11       cin>>y;
12       x.push(y);
13     }
23     return 0;
24 }

优先队列(运算符重载)队首为最小元素:

 1 #include<iostream>
 2 #include<vector>
 3 #include<queue>
 4 using namespace std;
 5 
 6 int tmp[100];
 7 struct cmp1
 8 {
 9     bool operator()(int x,int y)
10     {
11         return x>y;
12     }
13 };
14 priority_queue<int,vector<int>,cmp1>q2;
15 
16 int main()
17 {
18     int n,ans=0;
19 }

优先队列,队首为最大元素:

priority_queue<int>q2;

 

说明:

包含:

 #include<vector>//优先队列
 #include<queue>

 

基本操作:

x.push(y);//将y元素加入x队列
x.size();//询问x队列长度
x.front()//访问队列x中最先加入的元素
x.back()//访问队列x中最后加入的元素
x.pop();//弹出队列x中最先加入的元素
x.empty();//判断队列x是否为空,为空返回1,否则返回0

 

队列插入开销很小,但只能访问和弹出队首元素,无法做到修改队列中的元素值。

STl队列在某些方面还是很好用的,减小时空复杂度,操作的函数名也是很科学的,不会出现看不懂的情况。

主要是方便可以偷点小懒。(划去)

手动滑稽^_^