ACM__队列

Posted lllaih

tags:

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

今天学回顾bfs的时候遇到了,遂总结一下

队列是一种特殊的线性表,只允许在队列的前端(front)进行删除操作,在队尾进行插入操作,进行插入操作的端称作队尾,进行删除操作的端称作对头。(来自百度百科)

队列,顾名思义,就是队列,和在食堂排队买饭是一个性质,符合“先进先出”的特点。

总结一下队列的基础知识:

头文件:#include<queue> 

           必须写using namespace std;

定义:queue<int> q;其中<>里不只可以是int型,也可以是其他类型double,float,node(结构体)

基本操作:

  •   q.size(); 返回元素个数
  •   q.front(); 读取第一个元素的值
  •   q.empty(); 返回是否为空,空则返回1,否则返回0
  •   q.push(); 在q的队尾插入一个元素
  •   q.pop();删除q的第一个元素
  •   q.back();返回q的末尾元素

听说还有优先队列,还没学到,以后学到了再补上吧

 

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

XDOJ_1004_优先队列

HDU_3415_单调队列

XDOJ_1089_bfs+优先队列

06_队列

5.队列

python-队列