?/p>
2
?/p>
线性表

2005-07-14
?/p>
2
?/p>
线性表
课后习题讲解
1.
填空
?/p>
在顺序表中,
等概率情况下?/p>
插入和删除一个元素平均需移动
?/p>
?/p>
个元素,
具体移动元素的个数与
?/p>
?/p>
和(
)有关?/p>
【解答】表长的一半,表长,该元素在表中的位置
?/p>
顺序表中第一个元素的存储地址?/p>
100
,每个元素的长度?/p>
2
,则?/p>
5
个元素的存储地址是(
)?/p>
【解答?/p>
108
【分析】第
5
个元素的存储地址
=
?/p>
1
个元素的存储地址?/p>
(5
?/p>
1)×
2=108
?/p>
设单链表中指?/p>
p
指向结点
A
,若要删?/p>
A
的后继结点(假设
A
存在后继结点),则需修改指针的操
作为?/p>
)?/p>
【解答?/p>
p->next=(p->next)->next
?/p>
单链表中设置头结点的作用是(
)?/p>
【解答】为了运算方?/p>
【分析】例如在插入和删除操作时不必对表头的情况进行特殊处理?/p>
?/p>
非空的单循环链表由头指针
head
指示,则其尾结点(由指针
p
所指)满足?/p>
)?/p>
【解答?/p>
p->next=head
【分析】如?/p>
2-8
所示?/p>

?/p>
在由尾指?/p>
rear
指示的单循环链表中,在表尾插入一个结?/p>
s
的操作序列是?/p>
);删除开始结点的?/p>
作序列为?/p>
)?/p>
【解答?/p>
s->next =rear->next; rear->next =s; rear =s;
q=rear->next->next; rear->next->next=q->next; delete q;
【分析】操作示意图如图
2-9
所示: