多语言展示
当前在线:129今日阅读:2今日分享:38

priority_queue&queue的使用

priority_queue: 优先队列queue:队列
工具/原料

Dev-c++

priority_queue
1

合并果子#include//有些OJ&版本不兼容,需使用iostream&queueusing namespace std;int n,a,i,k,s;int main(){    priority_queue, greater >q;//定义小根堆    cin>>爬喝付n;    for(i=1;i<=n;i++){        cin>>a;        q.push(a);//将a放入q    }    while(q.size()!=1){//如果q的元素大脾绵于1,继续        k=q.top();//k赋为q的顶端元素        q.pop();//弹出q的顶端元素        k+=q.top();        q.pop();        s+=k;//将s加上顶端两个的和        q.push(k);//k放回q    }    cout<

2

priority_queue常用的函数: top:读入顶端元素 pop:删除顶端低近元素 size:返回元素个数 push:加入一个元素 empty:如果为空,返回true

queue
1

约瑟夫问#includeusing namespace std;int n,m,i,k;int main(){    queueq;    cin>>n>>m;    for(i=1;i<=n;i++)        q.push(i);//将编号为i的定为i    while(!q.empty()){//不为空继续        for(i=1;i

2

至于队列的常用函数,大概是: front:读入队头 back:读入队尾 pop:删除队头 empty、size、push:同priority_queue

推荐信息