- 1、本文档共15页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据结构课后习题答案合集
第一章 绪论
1. 数据结构课程研究的内容是什么?其中哪个方面和计算机无关?
答:非数值计算,包括数据的 逻辑结构、存储结构,操作的实现
2. 数据结构按逻辑结构可分为哪几类?(不要简单答线性和非线性)
3.为什么要进行算法分析?(分析算法的效率以求改进),算法分析主要研究哪几个方面?( 时间效率和空间效率,即:空间复杂性和时间复杂性)
4.分析下面各程序段的时间复杂度。
5、数据结构被形式地定义为(D, R),其中D是 数据元素 的有限集合,R是D上的 关系 有限集合。设有数据逻辑结构S=(D,R),试按各小题所给条件画出这些逻辑结构的图示,并确定相对于关系R,哪些结点是开始结点,哪些结点是终端结点?
1. 【严蔚敏习题集P7 1.3②】
D={d1,d2,d3,d4} R={(d1,d2),(d2,d3),(d3,d4) }
答: d1→d2→d3→d4 d1—无直接前驱,是首结点 d4—无直接后继是尾结点
D={d1,d2,…,d9}
R={(d1,d2),(d1,d3),(d3,d4),(d3,d6),(d6,d8),(d4,d5), (d6,d7),(d8,d9) }
答: 此图为树形结构 d1—无直接前驱,是根结点 d2,d5,d7,d9—无直接后继是叶子结点
D={d1,d2,…,d9}
R={(d1,d3),(d1,d8),(d2,d3),(d2,d4),(d2,d5),(d3,d9), (d5,d6),(d8,d9),(d9,d7), (d4,d7), (d4,d6)}
答: 此图为图形结构 d1,d2—无直接前驱,是开始结点 d6,d7—无直接后继是终端结点
(3)
学习方法提示:
同学们一定要把教材阅读,理解以后再做题,暂时不要做那些针对考试的“茴香豆的茴有几种写法的题”,以后要参加那些考试的时候再说。平时一定要以理解为核心,没有必要把一些细枝末节,甲乙丙丁的条款记住,甚至有些说法,这样说也有理,那样说也有理,没有必要钻牛角尖。比如上面习题中,数据结构分几类,有的教材上写“线性和非线性二类”,有的写“线性,树,图三类”,还有的写“线性,树,图,集合四类”,作者是从不同的角度去看待的。作为学习,这个问题所谓的“标准答案”是次要的。
不要强记公式,公式应该是自己理解,自己能推导出来。比如评价顺序表的删除操作的复杂度,你应该记得思路,而不是公式(完全忘记了也没关系)。我本人就不记得很多公式,但是要用的时候知道怎么自己推导出来,知道去哪里找到这个公式,那就行了,有些公式,在自己的工作中老用老用的,自然就记住了。人的大脑是有限的,要把这有限的“存储容量”用来记住你要用的东西。
至于将来要参加程序员的考试的时候,需要“标准答案”和考试速度的时候才需要多看那些试题及所谓的“标准答案”。那些考试,总是把一个简单的说法用很复杂的方式转弯抹角地说出来,但在学习的过程中应该抓住实质与核心,而不是把精力放在牛角尖上。在你不熟悉教材内容的时候,你发现那些说法都是晦涩难懂的,而当你渐渐地熟悉问题的实质以后,大多数问题对你来说都是自然而然的,是你自己能解决的。
欢迎大家共同讨论学习的方法。以后同学们和我的心得将整理以后继续发出。
杨华 谨识
第二章 线性表
一、填空
1、 向一个长度为n的向量的第i个元素(1≤i≤n+1)之前插入一个元素时,需向后移动 n-i+1 个元素。 向一个长度为n的向量中删除第i个元素(1≤i≤n)时,需向前移动 n-i 个元素。.
顺序表中插入或删除一个元素,需要平均移动 表中一半元素,具体移动的元素个数与 表长和该元素
在表中的位置 有关。 在顺序表中访问任意一结点的时间复杂度均为 O(1) ,因此,顺序表也称为 随机存取 的数据结构。.一个向量第一个元素的存储地址是100,每个元素的长度为2,则第5个元素的地址是 108 ;向一个有127个元素的顺序表中插入一个新元素并保持原来顺序不变,平均要移动 63.5 个元素;
3、在n个结点的单链表中要删除已知结点*p,需找到它的前驱结点的地址,其时间复杂度为O(n)。
现有一个具有五个元素的线性表L={23,17,47,05,31},若它以链接方式存储在下列100~119号地址空间中,每个结点由数据(占2个字节)和指针(占2个字节)组成,如下所示:
05 U 17 X 23 V 31 Y 47 Z ^ ^ 100 120 其中指针X,Y,Z的值分别为多少?该线性表的首结点起始地址为多少?末结点的起始地址为多少?(10分)
答:X= 116 Y= 0
文档评论(0)