不带头结点的单链表head为空的条件

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

不带头结点的单链表head为空的判别条件是()A.head!=NULL B.head—>link= =NULL C.head—>link= =head D.head= =NULL

B

因为不带头结点,所以head的下一位是第一位

即判断head->link是否为空即可

不带头结点的单链表head为空的判定条件是什么head==NULL;头指针直接指向空

若有头结点,则为head->next==NULL

head==null;

带头结点的是head->null;

( )不带头结点的单链表head为空的判定条件是

head==NULL

head->next==NULL

head!=NULL

head->next==head

A head == NULL

带头结点的单链表head为空的判定条件()

正确答案: B 你的答案: C (错误)

head==NULL

head->next==NULL

head->next==head

head!=NULL

B

注意是带头结点,如果不带头结点就选A

为何头指针为head的带头结点的单链表判空条件head->next==null?其实一开始这里也是没啥问题的,只是突然产生了疑问点——head为头指针,储存了头结点的地址,按照我残余的一点指针知识,我总感觉不对,head只是个地址,咋可以直接head->next使用呢?其实哈,这里又产生了和我之前学结构体这个知识点一样的纠结点(嘿嘿,其实这里也算是结构体类型)——结构体

总之和结构体类型一样这个指向符号“->”,这里是有特殊规定的,

比如你定义个结构体类型

struct student

{

int age;

float score;

char name[100];

}*pstu,stu;

你用stu.age,pstu->age或者(*pstu).age都是一样可以取到成员变量的,这里的pstu它也是个地址,但是c语言就是这么规定了利用pstu->age可以取到其结构体内部成员变量(记住就好)所以不

难理解为啥head这个指向头结点的指针为啥用head->next就能取到头结点结构体中的next成员变量了。

如此便恍然大悟,头结点中next成员变量存储的是下一个结点的地址,若next域中为null,所以除了头结点外,链表中无其他结点,于是单链表判空。

相关文档
最新文档