C++ 队列queue用法

Posted 软件工程小施同学

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C++ 队列queue用法相关的知识,希望对你有一定的参考价值。

方法

q.empty()               如果队列为空返回true,否则返回false
q.size()                返回队列中元素的个数
q.pop()                 删除队列首元素但不返回其值
q.front()               返回队首元素的值,但不删除该元素
q.push()                在队尾压入新元素
q.back()                返回队列尾元素的值,但不删除该元素


#include <queue>
#include <iostream>
using namespace std;
 
int main()
	queue<int> q;
	for (int i = 0; i < 10; i++)
		q.push(i);
	
	if (!q.empty())
		cout << "队列q非空!" << endl;
		cout << "q中有" << q.size() << "个元素" << endl;
	
	cout << "队头元素为:" << q.front() << endl;
	cout << "队尾元素为:" << q.back() << endl;
	for (int j = 0; j < 10; j++)
		int tmp = q.front();
		cout << tmp << " ";
		q.pop();
	
	cout << endl;
	cout << "队头元素为:" << q.front() << endl;
	if (!q.empty())
		cout << "队列非空!" << endl;
	

	return 0;

注意,

1. 队列为空后,q.front仍然有值

2. 和 stack 一样,queue 也没有迭代器。访问元素的唯一方式是遍历容器内容,并移除访问过的每一个元素

3. 没有clear操作

C++数据结构——队列_GeekZW的博客-CSDN博客_c++队列

C++ 清空队列(queue)的几种方法_致守的博客-CSDN博客_c++ queue清空

以上是关于C++ 队列queue用法的主要内容,如果未能解决你的问题,请参考以下文章

[转]c++优先队列(priority_queue)用法详解

STL中队列queue的用法

C++标准模板库(STL)——queue常见用法详解

C++ 里面 系统自带的队列类queue 怎么用?

C++中 priority_queue 的用法总结

C++ priority_queue的用法,一看就会用