双端队列(deque)

双端队列(deque)

         区别于数据结构的双端队列,这里的是STL的!!
双端队列(deque容器类):#include<deque>与vector 类似,支持随机访问和快速插入删除,它在容器中某一位置上的操作所花费的是线性时间。与 vector不同的是,deque还支持从开始端插入数据:push_front()。此外deque 不支持与vector 的capacity()、reserve() 类似的操作。
        deque,是“double-ended queue”的缩写。
        可以随机存取元素(用索引直接存取)。
        数组头部和尾部添加或移除元素都非常快速,但是在中部安插元素比较费时。

        优势:查找      劣势:添加、删除(仅头部尾部快)

        

        deque容器详解
        头文件 #include <deque>
        定义变量 deque<int> mydeq;
        主要成员函数
        mydeq.clear()                             移除容器中所有数据。
        mydeq.push_front(elem)         在队列首部加入一个数据
        mydeq.pop_front()                     删除队列尾部数据
        mydeq.push_back(elem)         在队列尾部加入一个数据
        mydeq.pop_back()                     删除队列尾部数据
        mydeq.empty()                            判断队列是否为空,为空返回true
        mydeq.size()                                返回容器中实际数据的个数。
        mydeq.erase(pos)                     删除pos位置的数据,返回下一个数据的位置。
        mydeq.insert(pos,cnt,elem)    在pos位置插入cnt个数据elem。
        mydeq.begin()                            返回的指针指向数组中的第一个数据。
        mydeq.end()                                实际上是取末尾加一,以便让循环正确运行--它返回的指针指向最靠近数组界限的数据。
        operator[]                                     返回容器中指定位置的一个引用


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值