关于队列,该如何处理
关于队列大家好,请问一个问题:假定一个带附加表头节点的循环链队的队首和队尾指针分别用front和rear表示,
关于队列
大家好,请问一个问题:假定一个带附加表头节点的循环链队的队首和队尾指针分别用front和rear表示,判断对空的条件是front == rear。那么队列只有一个元素节点的判断条件是不是也是front == rear呢?
[解决办法]
不是,front->next = rear说明是一个元素,因为有一个附加表头
[解决办法]
循环队列无法由去q.front==q.rear判断队列是满还是空。有两种解决方法一是设置标志位,二是少用一个元素空间。if((q.rear+1)%MaxQSize==q.front)判断队列满。
非循环的单链队,空的判断条件是q.front->next=NULL.
[解决办法]front总是指向附加表头。
[解决办法]如果带了头节点的话,front == rear 判断空是不对的。自己在纸上画画就知道了。