STL 容器配接器

以底部容器完成所有工作,而具有这种修改某物接口而成为另一种风貌的性质者称为配接器, 因此STL stack queue priority_queue都称为容器配接器。

stack

stack是一种先进后出的数据结构,不允许有遍历行为。STL是以deque作为缺省情况下的stack底部结构。(deque为底部结构并封闭头部开口)。
在容器deque中的命名为push_back() pop_back(),在容器配接器中就简单命名为push() 、pop() , top()的值则是返回deque中的back().
在stack中 templata<class T,class Sequence=deque>,默认为deque,在使用中,也可以改为使用list作为底层容器。

queue

queue是一种先进先出的数据结构,不允许有遍历行为,同样以deque作为默认的底部结构,
在容器deque中的命名为push_back() pop_back(),在容器配接器中就简单命名为push() 、pop()【因为这个我之前好像记乱了 所以强调几次】 queue中使用了front() 和back(),直接调用deque的front()、 back() ,一样可以使用list作为底部结构

priority_queue

priority_queue是一个带有权值观念的queue,其内的元素并非按照被推入的次序排列,而是自动按照元素的权值排列(通常权值以实值表示),权值最高者,排在最前面。因为在缺省情况下priority_queue利用max_heap最大堆完成,后者是一个以vector表现的完全二叉树。priority_queue的所有元素,进出都是有一定的规划,只有queue顶端的元素(权值最高者)才有机会被外界取用,priority_queue不提供遍历功能,也不提供迭代器。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值