C++的queue容器

开发者福利!热门AI工具限时免费用 购周边即赠Coding Plan Lite,Claude Code、Cursor等20+工具畅享,效率翻倍! 阅读详情

一、介绍

        C++的queue容器又被称为队列,存储特点是:先进先出

二、数据结构

        queue的先进先出特点指的是,从队尾插入元素,从队头取出元素:

队尾元素
队头元素

        queue由于先进先出的特点,一般情况下不允许遍历

三、queue的使用

3.1 queue初始化

        queue容器常用的两个构造函数如下所示:

声明解释
queue<T> qq初始化为空队列
queue<T> q(queue<T> q1)拷贝函数,将队列q1的全部元素拷贝给q1
queue<int> q0;//空队列
queue<int> q1(q0);//拷贝函数

3.2 queue赋值

声明解释
stack& operator=(const stack &s)

重载=运算符

(有关重载运算符,可以看之前写的《C++重载运算符》)

queue<int> q0;//空队列
queue<int> q1 = q0;//使用重载饿的等号运算符赋值

3.3 queue数据存取

声明解释
push(T elem)队尾向栈添加一个元素elem
pop()队头向栈删除一个元素
back()返回当前队尾元素的值

front()

返回当前队头元素的值
queue<int> q0;//空队列
q0.push(666);//q0 = [666]
q0.push(777);//q0 = [666, 777]
cout << q0.back() << endl;//777
cout << q0.front() << endl;//666
q0.pop();//q0 = [777]

3.4 queue容量与大小

声明解释
size()返回当前队列中元素的个数
empty()判断队列是否为空
queue<int> q;
for (int i = 0; i < 10; i++) {
	q.push(i);
}//q = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

cout << s0.size() << endl;//10
cout << boolalpha << s0.empty() << endl;//false
C++ STL容器queue C++ queue 容器 定义于头文件 <queue>,申明为: template< class T, class Container = std::deque<T> > class queue; std::queue 类是容器适配器,它给予程序员队列的功能——尤其是 FIFO (先进先出)数据结构。 类模板表现为底层容器的包装器——只提供特定... 阅读详情

相关推荐

C++ STL队列(Queue容器详解

它是一种线性数据结构,与栈类似,但是在队列中,元素从后面添加,从前面删除,而在栈中,元素只能从一端添加和删除。empty()函数用于检查队列是否为空,如果队列为空,则返回true,否则返回false。除了以上成员函数,队列类还有一些其他的功能,如可以通过复制一个已存在的队列来创建一个新的队列、将队列转换为数组等。总的来说,队列是一种非常强大的数据结构,在算法实现过程中经常被使用。接下来,让我们添加元素到队列中。在上面的代码中,push()函数用于向队列中添加元素,而pop()函数用于删除队列的首位元素。

CyberSphinx的博客 294

STL容器queue的使用

stl容器queue的使用 包含6.0代码 以及详细的文档说明

c++STL容器Queue

Queue简介 queue是队列容器,是一种“先进先出”的容器。 queue是简单地装饰deque容器而成为另外的一种容器。 #include queue对象的默认构造 queue采用模板类实现,queue对象的默认构造形式:queue queT; 如: queue queInt; //一个存放int的queue容器queue queFloat; //一个存放float的queue容器queue queString; //一个存放string的queu

希望我的博客,能帮上你解决学习中工作中所遇到的问题 577

C++ 十五】C++ queue容器

本文包含queue基本概念、queue构造函数、queue赋值操作、queue数据存取、queue大小操作。

qq_45138120的博客 2778

C++——queue容器

queue容器,队列

weixin_47207479的博客 858

C++容器篇(四)—— queue的基本介绍以及模拟实现

queue的基本介绍以及模拟实现

m0_56069910的博客 1314

C++容器适配器stack、queue、priority_queue

C++容器适配器stack、queue、priority_queue

Xpccccc的博客 1214

C++容器:stack和queue

队列是一种容器适配器,专门用于在FIFO上下文(先进先出)中操作,其中从容器一端插入元素,另一端提取元素。队列作为容器适配器实现,容器适配器即将特定容器类封装作为其底层容器类,queue提供一组特定的成员函数来访问其元素。元素从队尾入队列,从队头出队列。底层容器可以是标准容器类模板之一,也可以是其他专门设计的容器类。标准容器类deque和list满足了这些要求。默认情况下,如果没有为queue实例化指定容器类,则使用标准容器deque。queue文档。

DDDDDDDRDDR的博客 1014

C++容器——queue

C++queue容器,使用和用法

Three_stones的博客 628

C++知识整理day7容器——stack和queue容器(包括deque容器、priority_queue容器

我们可以看到,在我们之前学的容器中,例如vector,里面调的都是内存池,而stack和queue里面都是一个容器适配器。Q:什么是适配器?A:适配器是一种设计模式(设计模式是一套被反复使用的、多数人知晓的、经过分类编目的、代码设计经验的总结),该种模式是将一个类的接口转换成客户希望的另外一个接口。例如:Q:为什么还要有deque这种容器?A:首先,deque是双带你队列,它允许两端都可以插入和删除元素。

qq_59702185的博客 725

C++ STL priority_queue容器详解

priority_queue 容器适配器模拟的也是队列这种存储结构,即使用此容器适配器存储元素只能“从一端进(称为队尾),从另一端出(称为队头)”,且每次只能访问 priority_queue 中位于队头的元素。但是,priority_queue 容器适配器中元素的存和取,遵循的并不是 “First in,First out”(先入先出)原则,而是“First in,Largest out”原则。直白的翻译,指的就是先进队列的元素并不一定先出队列,而是优先级最大的元素最先出队列。

Lemon_C17y的博客 1121

c++queue容器

一.queue模版类的定义在头文件中。 queue与stack模版非常类似,queue模版也需要定义两个模版参数,一个是元素类型,一个是容器类型,元素类型是必要的,容器类型是可选的,默认为dqueue类型。 定义queue对象的示例代码如下: queueq1; queueq2; queue的基本操作有: 1.入队:如q.push(x):将x元素接到队列的末端;

hjding的博客 344

C++ 特殊容器 —— queue 用法详解

C++ 特殊容器 —— queue 用法详解 写在前面:近期正在学习C++的STL容器,因此在这里做一下日志记录,主要介绍一些容器基本成员函数的用法, 配上实际用例,并不涉及原理。但别人的博客终究是别人的, 最好自己上手操作一下. 写的不好, 请大神手下留情. 下面说的 “运行之后” 表示: 运行上个语句之后的结果. 一行如果说的太长的话, 就得拖动下面的进度条才能看到后面的内容, 非常麻烦 ...

Ember_Sky 616

C++ STL——Queue容器、priority_queue

一、queue 1、基本概念 Queue是一种容器适配器 C++ 标准库定义了三种类型的容器适配器:stack、queue 和 priority_queue。 每种适配器都限制了一些基础容器类的功能,以便对标准数据结构提供精确控制的接口。 Queue是一种先进先出(First In First Out,FIFO)的数据结构,它有两个出口。一个模板容器适配器类,它提供功能的限制,限制对一些基本容器类型的前端和后端元素的访问权限。 可以在后端添加或从前端移除元素,并且可以在队列的任何一端检查元素。 和

LiuXF93的博客 409

C++STL容器queue和priority_queue

queueC++标准库的一个容器适配器,用于实现先进先出(FIFO)的队列数据结构。它基于其他底层容器(如 deque或list)实现,默认使用deque作为底层容器queue是一个简单易用的先进先出(FIFO)容器适配器, 它支持在队尾插入元素、在队头删除元素,以及访问队头和队尾元素。底层容器:默认使用deque,但可以指定其他容器(如 list)。受限访问:只能访问队头或队尾元素,不能随机访问中间元素。插入与删除:队尾插入与队头删除的时间复杂度为O(1)。先进先出:元素从队尾插入,队头删除。

qq_55527904的博客 459

C++ STL Queue容器详解

queue 容器 1 queue 基本概念 概念:Queue是一种先进先出(First In First Out,FIFO)的数据结构,它有两个出口。 一个模板容器适配器类,它提供功能的限制,限制对一些基本容器类型的前端和后端元素的访问权限。 可以在后端添加或从前端移除元素,并且可以在队列的任何一端检查元素。 适用于队列的基础容器类包括 deque 和 list 队列容器允许从一端新增元素,从另一端移除元素 队列中只有队头和队尾才可以被外界使用,因此队列不允许有遍历行为 队列中进数据称为 — 入队

frighting_ing的博客 940

C++ STL Queue容器使用详解

它基于其他底层容器实现队列数据结构,遵循先进先出(FIFO)原则。是标准模板库(STL)中的。

2301_80167761的博客 576

C++ stl容器stack,queue,priority_queue的底层模拟实现

stack,queue,priority_queue的底层模拟实现

2301_79698419的博客 1228

C++ STL 容器queue

#define _CRT_SECURE_NO_WARNINGS #include<iostream> #include<queue> using namespace std; /*Queue所有元素的进出都必须符合”先进先出”的条件, 只有queue的顶端元素, 才有机会被外界取用。 Queue不提供遍历功能, 也不提供迭代器。*/ void test() { //...

weixin_43903378的博客 159
上一篇: C++的stack容器
下一篇: C++的list容器
陆地鲨鱼-彻
博客等级 码龄9年 671粉丝 104原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值