数据结构习题及答案——严蔚敏_课后习题答案 精品
- 格式:doc
- 大小:102.51 KB
- 文档页数:33
第一章绪论
选择题
1.组成数据的基本单位是()
(A)数据项(B)数据类型(C)数据元素(D)数据变量
2.数据结构是研究数据的()以及它们之间的相互关系。
(A)理想结构,物理结构(B)理想结构,抽象结构
(C)物理结构,逻辑结构(D)抽象结构,逻辑结构
3.在数据结构中,从逻辑上可以把数据结构分成()
(A)动态结构和静态结构(B)紧凑结构和非紧凑结构
(C)线性结构和非线性结构(D)内部结构和外部结构
4.数据结构是一门研究非数值计算的程序设计问题中计算机的(①)以及它们之间的(②)和运算等的学科。
①(A)数据元素(B)计算方法(C)逻辑存储(D)数据映像
②(A)结构(B)关系(C)运算(D)算法
5.算法分析的目的是()。
(A)找出数据结构的合理性(B)研究算法中的输入和输出的关系
(C)分析算法的效率以求改进(D)分析算法的易懂性和文档性
6.计算机算法指的是(①),它必须具备输入、输出和(②)等5个特性。
①(A)计算方法(B)排序方法(C)解决问题的有限运算序列(D)调度方法
②(A)可执行性、可移植性和可扩充性(B)可行性、确定性和有穷性
(C)确定性、有穷性和稳定性(D)易读性、稳定性和安全性
二、判断题
1.数据的机内表示称为数据的存储结构。()
2.算法就是程序。()
3.数据元素是数据的最小单位。()
4.算法的五个特性为:有穷性、输入、输出、完成性和确定性。()
5.算法的时间复杂度取决于问题的规模和待处理数据的初态。()
三、填空题
1.数据逻辑结构包括________、________、_________ 和_________四种类型,其中树形结构和图形结构合称为_____。
2.在线性结构中,第一个结点____前驱结点,其余每个结点有且只有______个前驱结点;最后一个结点______后续结点,其余每个结点有且只有_______个后续结点。
3.在树形结构中,树根结点没有_______结点,其余每个结点有且只有_______个前驱结点;叶子结点没有________结点,其余每个结点的后续结点可以_________。
4.在图形结构中,每个结点的前驱结点数和后续结点数可以_________。
5.线性结构中元素之间存在________关系,树形结构中元素之间存在______关系,图形结构中元素之间存在_______关系。
6.算法的五个重要特性是_______、_______、______、_______、_______。
7.数据结构的三要素是指______、_______和________。
8.链式存储结构与顺序存储结构相比较,主要优点是________________________________。
9.设有一批数据元素,为了最快的存储某元素,数据结构宜用_________结构,为了方便插入一个元素,数据结构宜用____________结构。
四、算法分析题
1.求下列算法段的语句频度及时间复杂度参考答案:
选择题1. C 2.C 3. C 4. A、B 5. C 6.C、B
三、填空题
1、线性、树形、图形、集合;非线性(网状)
2、没有;1;没有;1
3、前驱;1;后继;任意多个
4、任意多个
5、一对一;一对多;多对多
6、有穷性;确定性;可行性;输入;输出
7、数据元素;逻辑结构;存储结构
8、插入、删除、合并等操作较方便
9、顺序存储;链式存储
四、算法分析题
for(i=1; i<=n; i++)
for(j =1; j <=i ; j++)
x=x+1;
分析:该算法为一个二重循环,执行次数为内、外循环次数相乘,但内循环次数不固定,与外循环有关,因些,时间频度T(n)=1+2+3+…+n=n*(n+1)/2
有1/4≤T(n)/n2≤1,故它的时间复杂度为O(n2), 即T(n)与n2 数量级相同。2、分析下列算法段的时间频度及时间复杂度
for (i=1;i<=n;i++)
for (j=1;j<=i;j++)
for ( k=1;k<=j;k++)
x=i+j-k;
分析算法规律可知时间频度T(n)=1+(1+2)+(1+2+3)+...+(1+2+3+…+n)
由于有1/6 ≤ T(n)/ n3 ≤1,故时间复杂度为O(n3)
第二章线性表
一、选择题
1.一个线性表第一个元素的存储地址是100,每个元素的长度为2,则第5个元素的地址是( )
(A)110 (B)108(C)100 (D)120
2. 向一个有127个元素的顺序表中插入一个新元素并保持原来顺序不变,平均要移动()个元素。(A)64(B)63 (C)6
3.5(D)7
3.线性表采用链式存储结构时,其地址()。
(A) 必须是连续的(B) 部分地址必须是连续的
(C) 一定是不连续的(D) 连续与否均可以
4. 在一个单链表中,若p所指结点不是最后结点,在p之后插入s所指结点,则执行()
(A)s->next=p;p->next=s; (B)s->next=p->next;p->next=s;
(C)s->next=p->next;p=s; (D)p->next=s;s->next=p;
5.在一个单链表中,若删除p所指结点的后续结点,则执行()
(A)p->next=p->next->next; (B)p=p->next; p->next=p->next->next;
(C)p->next=p->next; (D)p =p->next->next;
6.下列有关线性表的叙述中,正确的是()
(A)线性表中的元素之间隔是线性关系
(B)线性表中至少有一个元素
(C)线性表中任何一个元素有且仅有一个直接前趋
(D)线性表中任何一个元素有且仅有一个直接后继
7.线性表是具有n个()的有限序列(n≠0)
(A)表元素(B)字符(C)数据元素(D)数据项
二、判断题
1.线性表的链接存储,表中元素的逻辑顺序与物理顺序一定相同。()
2.如果没有提供指针类型的语言,就无法构造链式结构。()
3.线性结构的特点是只有一个结点没有前驱,只有一个结点没有后继,其余的结点只有一个前驱和后继。()