STL常用容器总结——queue单向队列

原文

单向队列和栈类似,栈是只在栈顶添加或移除数据,单向队列是从队尾添加数据,从队头移除数据。栈是先进后出(FILO),单向队列是先进先出(FIFO)。在STL中,单向队列也是以别的容器作为底层数据结构的,默认情况下使用deque,可以指定vector等。

queue单向队列常用函数:

1.数据操作

que.front()

返回队列头部数据的引用

que.back()

返回队列尾部数据的引用

que.push(elem)

在队尾添加数据

que.pop()

队列头部数据出队

2.其他操作

que.empty()

判断队列是否为空,若空返回true,否则返回false。

que.size()

返回队列中数据的个数


queue单向队列例子:

#include <iostream>
#include <queue>
#include <vector>
using std::queue;
using std::vector;
int main()
{
	queue<int> que;//默认使用deque作为底层容器
	queue<int, vector<int> >quev;//指定vector为底层容器
	for (int i = 0; i < 10; ++i)
	{
		que.push(i*i);
		quev.push(i);
	}
	std::cout << "\n\n队头数据:"<<que.front();
	std::cout << "\n\n队尾数据:" << que.back();
	std::cout << "\n\n队列大小:" << que.size();
	std::cout << "\n\n队列que的数据:\n";
	while (!que.empty())
	{
		std::cout << que.front() << " ";
		que.pop();
	}
	system("pause");
	return 0;
}




阅读更多 登录后自动展开
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页