2-1
线性表采用链式存储时,其地址()。 (1分)
部分地址必须是连续的
一定是不连续的
连续与否均可以
必须是连续的
2-2
不带表头附加结点的单链表为空的判断条件是头指针head满足条件()。 (1分)
head!=NULL
head->next== head
head->nextNULL
headNULL
2-3
在单链表中,要删除某一指定结点,必须先找到该结点的()。 (1分)
直接后继的后继
直接后继
自身位置
直接前驱
2-4
可以用带表头附加结点的链表表示线性表,也可以用不带头结点的链表表示线性表,前者最主要的好处是()。 (1分)
可以提高存取表元素的速度
节省存储空间
使空表和非空表的处理统一
可以加快对表的遍历
有了头结点,对在第一元素结点前插入结点和删除第一结点,其操作与其他结点的操作就统一了
2-5
设h为不带头结点的单向链表。在h的头上插入一个新结点t的语句是:(1分)
h=t; t->next=h;
t->next=h->next; h=t;
t->next=h; h=t;
h=t; t->next=h->next;
2-6
在单链表中,若p所指的结点不是最后结点,在p之后插入s所指结点,则执行 (1分)
p->next=s; s->next=p;
s->next=p->next; p=s;
s->next=p->next; p->next=s;
s->next=p; p->next=s;
2-7
线性表L在什么情况下适用于使用链式结构实现? (1分)
L中含有大量的结点
L中结点结构复杂
需经常修改L中的结点值
需不断对L进行删除插入
2-9
链表不具有的特点是: (1分)
所需空间与线性长度成正比
不必事先估计存储空间
方便随机访问任一元素
插入、删除不需要移动元素
2-10
以下关于链式存储结构的叙述中,()是不正确的。 (1分)
插入、删除运算操作方便,不必移动结点
可以通过计算直接确定第i个结点的存储地址
逻辑上相邻的结点物理上不必邻接
结点除自身信息外还包括指针域,因此存储密度小于顺序存储结构