[LeetCode刷题笔记] C++ queue常用操作
在[1]对常用的STL容器进行了概览,笔者在刷题过程中经常需要查询一些STL容器的函数,实为不便,因此在此对STL容器中常用的操作进行笔记。
std::queue<T>
是STL库中的实现队列的类,队列是一种先入先出(First-In-First-Out, FIFO)的数据结构,其可以看成是std::vector<T>
进行了某些操作的限制(比如不能任意地方插入,删除元素等)的狭义版本,对这些操作进行限制防止了人为有意或者无意中的误操作,在很多算法(比如BFS,树的遍历,操作系统调度等)中有着广泛应用。
其常见的函数不多,分别是:
empty()
判断队列是否为空size()
返回队列长度front()
返回队列的头部元素,不弹出back()
返回队列的尾部元素,不弹出pop()
弹出头部元素,注意不返回值。push()
在头部插入值
举个例子
std::queue<int> vars;
vars.push(1);
vars.push(2);
vars.push(3);
vars.push(4);
cout << vars.size() << endl ; // size = 4
cout << vars.front() << endl ; // front = 1, size = 4
vars.pop(); // size = 3;
cout << vars.front() << endl ; // front = 2, size = 3
cout << vars.back() << endl ; // back = 4, size = 3
vars.pop();
vars.pop();
vars.pop();
cout << vars.empty() << endl; // true
Reference
[1]. https://blog.csdn.net/LoseInVain/article/details/104189784