关于双向队列的用法

1.deque是跟队列一样的储存顺序,但是它有一下几个特点:

1.可以用[]或者at()来访问队列中的任意一个值

2.比vecor更加消耗空间

3.可以用push和pop对队列两端进行修改

4.可以在内部进行插入或者删除操作,但是性能不及list

2.创建一个双向队列

1.deque();//创建一个新的双向队列

2.deque(size_type num,const type_val)//创建一个插入num个val的队列

3.deque(size_type num);//创建一个大小为num的队列

4.deque(intput_iterater start,input_iterater end);//创建一个从start到end的队列

3.assign()

1.void assign(input_iterater start,input_iterater end)//把start到end的值赋值到队列中

2.void assign(size_num,const_val);//给队列复制num个val

4.at()

at(size_type pos);返回一个指针指向pos的值

5.back();//返回尾部的值

6.front();返回头部的值

7.begin();//返回头部的迭代器

8.end();//返回尾部迭代器

9.clear();清空deque

10.erase();从队列中抹去一个指定的值

1.erase(iterator pos);//删去指定的pos位置的值

2.erase(iterator start,iterator end);//删掉start到end中的值

11.empty();//查看队列是否为空

12.insert();插入一个值

1.insert(iterator pos,size_type num,const type_val);//在队列pos后插入num个val

2.insert(iterator pos,const type_val);//在pos位置中插入一个数字val

13.max_size()  返回双向队列能容纳的最大元素个数
14.pop_back() 删除尾部的元素
15.pop_front() 删除头部的元素
16.push_back() 在尾部加入一个元素
17.push_front()  在头部加入一个元素 

18.size();//返回队列中元素的个数

19.swap();//和另一个队列交换元素

void swap(deque&target);//与target队列交换元素

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值