个元素结点)。
解:头指针是指向链表中第一个结点的指针。首元结点是指链表中存储第一个数据元素的结点。头结点是在首元结点之前附设的一个结点,该结点不存储数据元素,其指针域指向首元结点,其作用主要是为了方便对链表的操作。它可以对空表、非空表以及首元结点的操作进行统一处理。22填空题。
解:1在顺序表中插入或删除一个元素,需要平均移动表中一半元素,具体移动的元素个数与元素在表中的位置有关。
下载后可复制编辑
f经典文档
2顺序表中逻辑上相邻的元素的物理位置必定紧邻。单链表中逻辑上相邻的元素的物理位置不一定紧邻。
3在单链表中,除了首元结点外,任一结点的存储位置由其前驱结点的链域的值指示。
4在单链表中设置头结点的作用是插入和删除首元结点时不用进行特殊处理。23在什么情况下用顺序表比链表好?
解:当线性表的数据元素在物理位置上是连续存储的时候,用顺序表比用链表好,其特点是可以进行随机存取。24对以下单链表分别执行下列各程序段,并画出结果示意图。
解:
下载后可复制编辑
f经典文档
25画出执行下列各行语句后各指针及链表的示意图。LLi
kListmallocsizeofLNodePLfori1i4iP
extLi
kListmallocsizeofLNodePP
extPdatai21P
extNULLfori4i1iI
s_Li
kListLi1i2fori1i3iDel_Li
kListLi解:
26已知L是无表头结点的单链表,且P结点既不是首元结点,也不
下载后可复制编辑
f经典文档
是尾元结点,试从下列提供的答案中选择合适的语句序列。a在P结点后插入S结点的语句序列是__________________。b在P结点前插入S结点的语句序列是__________________。c在表首插入S结点的语句序列是__________________。d在表尾插入S结点的语句序列是__________________。1P
extS2P
extP
ext
ext3P
extS
ext4S
extP
ext5S
extL6S
extNULL7QP8whileP
extQPP
ext9whileP
extNULLPP
ext10PQ11PL12LS13LP解:a41b711841c512d916
下载后可复制编辑
f经典文档
27已知L是带表头结点的非空单链表,且P结点既不是首元结点,也不是尾元结点,试从下列提供的答案中选择合适的语句序列。
a删除P结点的直接后继结点的语句序列是____________________。
b删除P结点的直接前驱结点的语句序列是____________________。
c删除P结点的语句序列是____________________。d删除首元结点的语句序列是____________________。e删除尾元结点的语句序列是____________________。1r