队列
队列(queue)一样都是线性数据结构,它的特征如下:
- 队列中的数有的特征,它遵循先进先出的原则,这也是栈的特征。
- 可以在队尾添加元素,队头添加元素,也可以队头删除元素。
基础队列的特征
队列的概念
- 队头和队尾:按照思想,从队头删除元素,从队尾入队元素。
- 入队:插入队列的操作,是元素入队。
- 出队:删除队列的操作,让元素出队。
我们现在有一个队列,为[1,3]:
添加元素时,元素只能从队尾一端进入队列,也即是2只能跟在1后面。
当然,出队也同理:
元素只能从队首出队列。
队列操作
- 建立队列:
queue<int> qu - 入队:
qu.push() - 出队:
qu.pop() - 访问队首:
qu.front() - 判断队列是否为空:
qu.empty()
代码组织
关于队列的源代码
queue<int> q;
w

本文详细介绍了线性数据结构中的队列,包括基础队列的特征、单调队列和优先队列的概念及操作。队列遵循先进先出原则,单调队列用于维护单调性质,优先队列则提供了一种处理具有优先级的元素的方式。并结合具体实例展示了如何使用单调队列解决滑动窗口最大值和最小值问题,以及利用优先队列解决合并果子的最小体力耗费问题。
最低0.47元/天 解锁文章
705

被折叠的 条评论
为什么被折叠?



