数组模拟栈:
const int N = 10010;
// ******************** 栈
int stk[N], tt//tt是下标;
// 插入
stk[++k] = x;
// 删除
tt--;
// 判断栈是否为空
if (tt > 0) not empty
else empty
// 栈顶
stk[tt];
// ******************** 队列
// 在队尾插入元素,在队头弹出元素
int q[N], hh, tt = -1;
// 插入
q[++tt] = x;
// 弹出
hh++;
// 判断队列是否为空
if (hh <= tt) not empty;
else empty;
// 取出队头元素
q[hh]
// ******************** 堆(完全二叉树)