- 1、本文档共35页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[理学]数据结构 习题 第二章 线性表 答案
第2章 线性表
一.选择题
1.A2.B3.C4.A5.D6.D7.D8.C9.B10.B,C11.1I11.2I11.3E11.4B11.5C12.B13.C14.C15.C16.A17.A18.A19.D20.C21.B22.D23.C24.B25.B26.A27.D二.判断题
1. ×2.√3. √4.×5.×6. ×7. ×8.×9.×10.×11.×12.×13. ×14. √15.×16. √部分答案解释如下。
头结点并不“仅起”标识作用,并且使操作统一。另外,头结点数据域可写入链表长度,或作监视哨。
4.两种存储结构各有优缺点,应根据实际情况选用,不能笼统说哪一个好。
7.集合中元素无逻辑关系。
9.非空线性表第一个元素无前驱,最后一个元素无后继。
13.线性表是逻辑结构,可以顺序存储,也可链式存储。
三.填空题
1.顺序 2.(n-1)/2 3.py-next=px-next; px-next=py
4 .n-i+1
5.主要是使插入和删除等操作统一,在第一个元素之前插入元素和删除第一个结点不必另作判断。另外,不论链表是否为空,链表指针不变。
6.O(1),O(n) 7.单链表,多重链表,(动态)链表,静态链表
8.f-next=p-next; f-prior=p; p-next-prior=f; p-next=f;
9.p^.prior s^.prior^.next
10. 指针 11.物理上相邻 指针 12.4 2
13.从任一结点出发都可访问到链表中每一个元素。
14.u=p-next; p-next=u-next; free(u); 15.L-next-next==L 16.p-next!=null
17.L-next==L L-prior==L 18.s-next=p-next;p-next=s;
19.(1) IF pa=NIL THEN return(true);
(2) pbNIL AND pa^.data=pb^.data
(3) return(inclusion(pa,pb));
(4) pb:=pb^.next;
(5) return(false);
非递归算法:
(1)pre:=pb; (2) paNIL AND pbNIL AND pb^.data=pa^.data (3)pa:=pa^.next; pb:=pb-next;
(4)pb:=pre^.next;pre:=pb;pa:=pa^.next;(5)IF pa=NIL THEN return(true) ELSE return(false);
[注]:本题是在链表上求模式匹配问题。非递归算法中用指针pre指向主串中开始结点(初始时为第一元素结点)。若主串与子串对应数据相等,两串工作指针pa和pb后移;否则,主串工作指针从pre的下一结点开始(这时pre又指向新的开始结点),子串工作指针从子串第一元素开始,比较一直继续到循环条件失败。若pa为空,则匹配成功,返回true,否则,返回false。
20.A.VAR head:ptr B. new(p) C. p^.data:=k D. q^.next:=p E. q:=p(带头结点)
21.(1)new(h);∥生成头结点,以便于操作。
(2)r^.next:=p; (3) r^.next:=q; (4) IF (q=NIL) THEN r^.next:=p;
22.A: r^.link^.datamax AND q^.link^.datamax
B: r:=r^.link C: q^.link D: q^.link E: r^.link F: r^.link
G: r:=s(或r:= r^.link) H: r:=r^.link I: q^.link:=s^.link
23.(1)la (2)0 (3)ji-1 (4)p↑.next (5)i1
24.(1)head^.left:=s ∥head的前驱指针指向插入结点
(2)j:=1;
(3)p:=p^.right ∥工作指针后移
(4)s^.left:=p
(5)p^.right^.left:=s; ∥p后继的前驱是s
(6)s^.left:=p;
25.(1)i=L.last ∥L
文档评论(0)