分析:
用数组模拟队列,要记住队列的特性是队尾入队,队头出队。
代码(C++)
#include <iostream>
using namespace std;
const int N = 100010;
// 队列的特性为队尾入队,队头出队
int que[N], head, tail = -1;
int main()
{
int n;
cin >> n;
string op;
int x;
while (n --)
{
cin >> op;
if (op == "push")
{
cin >> x;
que[++ tail] = x;
}
else if (op == "pop") head ++;
else if (op == "empty")
{
// 初始化空队或者多次出队后当 head 小于tail 时,记为空
if (head <= tail) cout << "NO" << endl;
else cout << "YES" << endl;
}
// 队头出队
else cout << que[head] << endl;
}
}