[LeetCode刷题笔记] C++ queue常用操作

在[1]对常用的STL容器进行了概览,笔者在刷题过程中经常需要查询一些STL容器的函数,实为不便,因此在此对STL容器中常用的操作进行笔记。


在这里插入图片描述

std::queue<T>是STL库中的实现队列的类,队列是一种先入先出(First-In-First-Out, FIFO)的数据结构,其可以看成是std::vector<T>进行了某些操作的限制(比如不能任意地方插入,删除元素等)的狭义版本,对这些操作进行限制防止了人为有意或者无意中的误操作,在很多算法(比如BFS,树的遍历,操作系统调度等)中有着广泛应用。
其常见的函数不多,分别是:

  1. empty() 判断队列是否为空
  2. size() 返回队列长度
  3. front() 返回队列的头部元素,不弹出
  4. back() 返回队列的尾部元素,不弹出
  5. pop() 弹出头部元素,注意不返回值。
  6. 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

posted @ 2020-02-23 01:22  FesianXu  阅读(112)  评论(0编辑  收藏  举报