组词大全

对带头结点的单循环链表从头结点开始遍历(head为头指针,p=head->next)。若指针p指向当前被遍历结点,则判定遍历过程结束的条件是()A.P==NULL B.Head==NULL C.

对带头结点的单循环链表从头结点开始遍历(head为头指针,p=head->next)。若指针p指向当前被遍历结点,则判定遍历过程结束的条件是()A.P==NULL B.Head==NULL C.p==head D.head!=p

在带头结点的单循环链表中,头指针head指向头结点,头结点的next域指向第一个数据结点,最后一个数据结点的next域又会指向头结点,形成闭环。遍历从p = head->next(即第一个数据结点)开始,需在遍历完所有数据结点后停止。由于链表无NULL终结点,需通过循环特性判断结束条件——当p重新指向头结点时,表明已遍历所有数据结点。

答案:C. p==head

解析:

A. P==NULL:循环链表中不存在NULL指针,最后一个结点指向头结点,因此该条件永不成立。

B. Head==NULL:head为头指针,遍历过程中不会改变,若head为NULL则链表不存在,与遍历逻辑无关。

C. p==head:当p从第一个数据结点开始遍历,依次经过所有数据结点后,最终会指向头结点,此时遍历结束。

D. head!=p:此条件表示“当head不等于p时继续遍历”,是循环继续的条件而非结束条件。

单循环链表的遍历核心是利用“回到头结点”标志遍历完成,因此p == head是唯一正确的结束条件。

相关成语


成语首拼