题目
【单选题】不带头结点的单链表head为空的判定条件是()A. head=NULLB. head->next=NULLC. head->next=headD. head!=NULL
【单选题】不带头结点的单链表head为空的判定条件是()
A. head=NULL
B. head->next=NULL
C. head->next=head
D. head!=NULL
题目解答
答案
A. head=NULL
解析
考查要点:本题主要考查单链表的基本概念,特别是不带头结点的单链表的空表判定条件。
解题核心思路:
在单链表中,头指针head直接指向链表的第一个数据节点。若链表为空,则头指针应指向空(即head = NULL
)。因此,判断链表是否为空只需检查头指针是否为NULL
。
关键点:
- 不带头结点的单链表中,头指针直接指向第一个数据节点。
- 当链表为空时,头指针必然指向空,无需通过
next
指针判断。
选项分析:
- 选项A(
head = NULL
):正确。当链表为空时,头指针head
未指向任何节点,因此直接判断head
是否为NULL
即可。 - 选项B(
head->next = NULL
):错误。此条件表示链表中存在至少一个节点(head
指向该节点),且该节点的next
指针为空,说明链表只有一个节点。 - 选项C(
head->next = head
):错误。此条件通常出现在循环链表中,与单链表的空表判定无关。 - 选项D(
head != NULL
):错误。此条件表示链表不为空,与题目要求相反。