队列
1.普通队列
//hh表示队头,tt表示队尾
int q[N],hh = 0,tt = -1;
//向队尾插入一个数
q[++tt] = x;
//从队头弹出一个数
hh++;
//队头的值
q[hh];
//判断队列是否为空,如果hh<=tt,则表示不为空
if(hh<=tt)
{
}
2.循环队列
//hh表示队头,tt表示队尾的后一个位置
int q[N],hh = 0,tt = 0;
//向队尾插入一个数
q[tt++] = x;
if(tt==N)tt = 0;
//向队头弹出一个数
hh++;
if(hh = N)hh = 0;
//队头的值
q[hh];
//判断队列是否为空,如果hh!=tt,则表示不为空
if(hh!=tt)
{
}
你好,为什么普通队列时tt=-1,循环队列tt=0 ?
1.普通队列
//hh表示队头,tt表示队尾
2.循环队列
//hh表示队头,tt表示队尾的后一个位置