C++ STL(5)queue


前言:

queue 是一种非常重要的数据结构,用于在程序中实现先进先出的队列行为。queue 容器适配器基于底层容器(如 dequelist)实现,提供了基本的队列操作,如入队、出队和访问队首元素等。

一、queue

1、基本概念

queue 不是一个独立的容器类,而是一个容器适配器。这意味着它本身不存储数据,而是利用其他容器(默认是 std::deque)来存储元素。queue 提供了受限的接口,只允许在容器的一端(队尾)添加元素,在另一端(队首)移除元素。

2、声明与初始化

可以使用默认构造函数创建一个空的std::queue对象,或者使用指定容器类型的构造函数。例如:

std::queue<int> myQueue; // 使用默认容器类型(通常是deque)
std::queue<int, std::vector<int>> myVectorQueue; // 使用vector作为底层容器

3、常用操作

  • push(const T& value): 队尾插入一个元素。
  • reference front(): 返回队首元素的引用。
  • const_reference front() const: 返回队首元素的常量引用。
  • reference back(): 返回队尾元素的引用。
  • const_reference back() const: 返回队尾元素的常量引用。
  • bool empty() const: 检查队列是否为空。
  • size_type size() const: 返回队列中的元素个数。

4、总结

std::queue是C++标准模板库中一个简单而强大的容器适配器,它提供了先进先出的数据结构,适用于各种需要队列功能的场景。通过掌握std::queue的基本用法和操作,可以有效地解决许多编程问题,提高程序的效率和可维护性。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值