好吧,我来了,我来讲讲队列……
本来还不打算怎么写呢,写简书才一周,收益——指精神上的,不是金钱上的收益——不少。老师还没讲,我先看看这队列,也介绍一下。
按老方法,四步走:
-基本信息
-定义和头文件
-使用方法(倾情赠送例子一个)
-总结(这很重要)
好勒,我们来说说:
1.明确使用方法:先进先出,后进后出,这就是像走一个独木桥,只能一个个走,还不能反方向
2.定义:queue<类型> 名称;
3.头文件 #include<queue>;
4.使用方法
empty() 如果队列为空返回true,否则返回false
size() 返回队列中元素的个数
pop() 删除队列首元素但不返回其值
front() 返回队首元素的值,但不删除该元素
back() 返回队列尾元素的值,但不删除该元素
push() 在队尾压入新元素
顺便说一下,top()仅适用于优先队列,不适用于普通(FIFO)队列。
5.倾情赠送的样例
queue<int> q;
q.empty();
q.size();
q.pop();
q.front();
q.back();
q.push();
6.总结
队列和栈,各有各的用处,队列是先进先出(额……只适用于普通),栈是后进先出(这么……没其他特殊栈),究竟用啥,看你自己咯。
常规题目,我也不细说,以BFS(广搜)为主,究竟如何,呵呵,请看下面图片——
当当当当
题目
详细的解题报告,我会晚点(两周之内)码完,优先队列,循环队列,我会晚点写(这看心情吧,也看我的效率)。