目录
1.queue
1.1介绍
队列,这一数据结构遵循着先进先出的原则。
//头文件
#include<queue>
//定义初始化
queue<int/*写类型*/> q;
1.2方法函数
代码 | 含义 |
---|---|
Q.front() | 返回Q的第一个数 |
Q.back() | 返回Q的最后一个数 |
Q.push(a) | 往队列内输入一个a |
Q.empty() | 判断是否为空,是返回1否则返回0 |
Q.pop() | 把队列的首位踢出去 |
Q.size() | 返回队列的大小 |
1.3 队列模拟
使用q[]数组来模拟队列结构。
hh用于表示队列首元素的索引,其初始值设为0。
tt用于表示队列尾元素的索引,其初始值设为-1,这表示队列初始时为空。
通常情况下,无论是单调栈还是单调队列的实现,都可以通过引入一个额外的变量
t
或h
来模拟其行为。
#include<bits/stdc++.h>
using namespace std;
const int N=1e5+5;
int q[N];
int main()
{
int h = 0,t = -1;
// 入队
q[++t] = 1;
q[++t] = 2;
// 将所有元素出队
while(h<=t)
{
int t=q[h++];
printf("%d ",t);
}
return 0;
}
大家支持一下我吧QwQ求求了....