STL queue队列容器和priority_queue优先队列容器

                    queue队列容器

【queue的定义】

queue的头文件:#include<queue>

定义queue<int>q;


【queue的性质】

          queue队列容器是一个先进先出的线性存储表,元素的插入只能在队尾,元素的删除只能在队首。


【queue的函数】

     queue<int>q;

1. q.push(x)              插入元素x(即入队)

2. q.pop()                  删除队首元素(即出队)

3. q.front()                读取队首元素

4. q.back()                读取队尾元素

5. q.empty()             判断队列是否为空

6. q.size()                 求队列元素的个数


【queue的基本操作】

#include<queue>
#include<iostream>
using namespace std;
int main()
{
    // queue队列容器是一个先进先出的储存表,元素的插入只能在队尾,元素的删除只能在队首
    queue<int>q;
    // push()入队,尾部插入
    q.push(1);
    q.push(2);
    q.push(3);
    q.push(9);
    // size()求队列的长度
    cout<<q.size()<<endl;
    // empty() 判断是否为空,空返回1
    cout<<q.empty()<<endl;
    // front()读取队首元素
    cout<<q.front()<<endl;
    // back() 读取队尾元素
    cout<<q.back()<<endl;
    while(!q.empty())
    {
        cout<<q.front()<<" ";
        // pop()队首元素出队
        q.pop();
    }
    cout<<endl;
    return 0;
}
                                       priority_queue优先队列容器

【priority_queue的性质】

        priority_queue优先队列容器与队列一样,只能从队尾插入元素,从队首删除元素。但是它与queue有所不同,priority并非按先进先出的原则进行出队,而是将当前队列最大的元素位于队首然后出队。队列中元素默认为按元素的值由大到小排序。

【priority_queue的基本操作】

#include<queue>
#include<iostream>
using namespace std;
int main()
{
    priority_queue<int>pq;
    pq.push(1);
    pq.push(2);
    pq.push(3);
    pq.push(9);
    cout<<pq.size()<<endl;
    // 所有元素出队,删除所有元素
    while(!pq.empty())
    {
        // top()输出当前队首元素
        cout<<pq.top()<<" ";
        // pop()出队,删除元素
        pq.pop();
    }
    cout<<endl;
    return 0;
}



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值