C ++中的队列示例| C ++标准模板库
C ++中的队列示例| C ++标准模板库是今天的主题。队列是遵循FIFO算法的抽象数据结构,即首先访问放在队列中的数据项。队列在两端都是开放的,而不像仅在一端打开的堆栈。
内容概述
- 1个C ++队列
- 1.1 #empty()
- 1.2 #size()
- 1.3 #swap()
- 1.4 #emplace()
- 1.5 #front()
- 1.6 #back()
- 1.7 #push()
- 1.8 #pop()
- 2#STL中队列的示例
C ++中的队列
队列是容器适配器的类型,专门设计用于在FIFO上下文(先进先出)中操作,其中项目被插入容器的一端并从另一端容器中提取。
队列实现为容器适配器,它是使用特定容器类的封装对象作为其底层容器的类,提供访问其项的特定成员函数集。项目被推入特定容器的“后面”并从其“前面”弹出。
我们可以使用以下语法在C ++中创建队列。
queuequeue_name
例如队列
添加头文件#include也很重要
队列中的元素插入后端,并从前端删除。
在STL中,队列支持许多功能,其中一些列在下面。
队列支持的功能如下。
#empty()
空函数用于检查队列是否为空。
句法:
queue_name.empty()
如果队列为空,则empty()函数返回true;如果列表不为空,则返回false。
注意:空函数中没有传递参数。如果我们传递任何参数,它将显示错误。
#尺寸()
size()函数用于查找队列的大小。
句法:
queue_name.size()
size()函数返回队列中存在的许多元素。
注意:size函数中没有传递参数。如果我们传递任何参数,它将显示错误。
#交易所()
swap()函数用于交易所相同类型的两个不同队列的元素。
句法:
queue_name1.swap(queue_name2)
操作没有返回值将queue_name1的元素交易所到queue_name2。
注意:队列的相同类型长度的队列必须是可变的。
#emplace()
Emplace函数用于在队列中插入新元素。
句法:
queue_name.emplace(value)
Value参数保存我们要添加到队列的元素的值。
该元素添加在队列的后端。
注意:让队列中已存在相同类型元素的value参数非常重要。
#面前()
front函数用于访问队列中存在的最旧元素或前端元素。由于队列首先出现,因此它访问第一个元素。
句法:
queue_name.front()
前面的功能没有参数。
注意:如果队列为空,则front函数显示未定义的行为。
#背部()
back函数用于从队列中最新插入的后端获取第一个元素。
句法
queue_name.back()
后退功能中没有参数。
注意:如果队列为空,则front函数显示未定义的行为。
#推()
push()函数用于从后端插入队列中的项目。
句法:
queue_name.push(value)
push函数中的参数是我们要在队列中推送的值。
注意:具有与现有元素相同类型的值非常重要。
#pop()
pop函数用于从队列中删除元素。
句法:
queue.name.pop()
它删除队列前端元素队列中存在的最旧元素。
注意:如果参数在pop函数中传递,它将显示错误。
#STL中队列的示例
编写一个程序,使用emplace函数在队列中插入三个元素,并检查队列是否为空。打印字符串以显示队列是否为空。
#include#include using namespace std; int main() { queue queue1; queue1.emplace(1); queue1.emplace(2); queue1.emplace(3); if (queue1.empty()) { cout << "The queue is empty"; } else { cout << "The queue is not empty"; } return 0; }
请参阅以下输出。
示例2:编写程序以使用push函数在队列中添加五个元素,并使用pop函数删除一个元素,然后打印队列。
#include#include using namespace std; int main() { queue queue2; queue2.push(0); queue2.push(1); queue2.push(2); queue2.push(3); queue2.push(4); // queue has element 0,1,2,3,4 queue2.pop(); // after poping one element queue becomes 0,1,2,3 // Printing queue elements cout << "Elements of the queue are:"; while (!queue2.empty()) { cout << ' ' << queue2.front(); queue2.pop(); } }
请参阅以下输出。
示例3:编写程序以打印队列的大小,队列的前端元素和队列的后端元素。
#include#include using namespace std; int main() { queue queue3; queue3.push(0); queue3.push(1); queue3.push(2); queue3.push(3); queue3.push(4); cout<<"Size of the queue is: "< 请参阅以下输出。
示例4:创建两个队列,向两个队列添加元素并交易所队列并打印交易所的队列。
#include#include using namespace std; int main() { queue queue2; queue queue1; queue1.push(0); queue1.push(1); queue1.push(2); queue1.push(3); queue1.push(4); queue2.push(5); queue2.push(6); queue2.push(7); queue2.push(8); queue2.push(9); queue1.swap(queue2); //Swapping cout << "Elements of queue1 after swapping are:"; while (!queue1.empty()) { cout << queue1.front() << " "; queue1.pop(); } // Print the second set cout << endl << "Elements of queue2 after swapping are:"; while (!queue2.empty()) { cout << queue2.front() << " "; queue2.pop(); } return 0; } 查看输出。
最后,C ++中的队列示例| C ++标准模板库结束了。
资讯来源:由0x资讯编译自APPDIVIDEND,版权归作者Ankit Lathiya所有,未经许可,不得转载