数据结构习题及答案——严蔚敏

  • 格式:doc
  • 大小:122.00 KB
  • 文档页数:79

下载文档原格式

  / 79
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第一章绪论

一、选择题

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、×

3、×

4、×

5、√

三、填空题

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)63.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)线性表中任何一个元素有且仅有一个直接后继