队列的特点是先进先出,若用循环单链表表示队列,则( )。
- A.入队列和出队列操作都不需要遍历链表
- B.入队列和出队列操作都需要遍历链表
- C.入队列操作需要遍历链表而出队列操作不需要
- D.入队列操作不需要遍历链表而出队列操作需要
正确答案及解析
正确答案
A
解析
循环单链表中最后一个结点的指针域rear不仅仅是结束标志,而是指向整个链表的第一个结点,从而使链表形成一个环。
对于队列,先进先出,后进后出。
在循环单链表中,出队操作从表头开始删除,也就是rear→next指针直接指向下一个结点,即rear→next=rear→next→next,然后释放原rear→next指向的结点即可,不需要遍历。
在循环单链表中,入队操作从队尾开始插入,新结点s→next指向首元素,然后rear→next指向新的结点s,最后调整尾指针rear指向新结点s即可,不需要遍历。




