数据结构作业标准答案

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

第一章

单选题

1、下列关于算法的基本特征,说法不正确的是()。能行性是算法中的每一个步骤必须能够实现且能达到预期的目的。算法的确定性是指算法中的每一个步骤必须是有明确的定义,不允许模棱两可。

算法的有穷性是指算法必须能在有限的时间内做完。算法与提供情报无关。

[D] 教师批改:D

2、算法的时间复杂度取决于()。问题的规模待处理的数据的初态

问题的难度 A 和B

[D] 教师批改:D

3、下列选项中,不是算法基本特征的是()。可行性有穷性

确定性高效率

[D] 教师批改:D

4、通常一个好的算法应达到的目标中,不包括()。正确性可读性

技巧性健壮性

[C] 教师批改:C

5、在一般的计算机系统中,基本的运算和操作不包括()。语法处理算术运算

关系运算数据传输

[A] 教师批改:A

6、工程上常用的分治法是()。列举法归纳法

减半递推技术回溯法

[C] 教师批改:C

多选题

7、算法设计的要求包括()。

正确性可读性

健壮性唯一性

[ABC] 教师批改:A,B,C

8、算法的时间复杂度应该与()无关。

所使用的计算机程序设计语言

基本运算的执行次数程序编制者

[ABD] 教师批改:A,B,D

9、下列关于算法的描述中,不正确的有()。

算法即是计算机程序算法是解决问题的计算方法

算法是排序方法算法是解决问题的有限运算序列

[ABC] 教师批改:A,B,C

填空题

16、所谓算法是指()。

教师批改:解题方案的准确而完整的描述

17、算法的基本特征有()、()、()和()

教师批改:能行性、确定性、有穷性和拥有足够的情报。

18、一个算法通常由两种基本要素组成,它们是()和()。

教师批改:算法中对数据的运算和操作。

算法的控制结构。

19、工程上常用的几种算法设计方法有列举法、()、()、()、()和回溯法。

教师批改:归纳法、递推、递归、减半递推技术。

20、算法的复杂度主要包括()复杂度和()复杂度。

教师批改:时间、空间

综合题

21、设给定3个整数a,b,c,试写出寻找这3个整数的中数的算法;并分析在平均情况与最坏情况下,该算法分别要做多少次比较?

寻找这3个整数的中数的算法用C语言描述如下(中数m由函数值返回):

int mid ( int a, int b, int c)

{ int m 。m=a 。

if ( m>=b ) { if (m>=c) { if ( b>=c ) m=b 。else m=c 。} }

else { if ( m<=c) { if (b>=c) m=c。else m=b 。} }

return ( m ) 。

}

假设a,b,c中的每一个数为中数的概率相等(均为1/3)。由于当a为中数时需要比较2次,b或c为中数时均需要比较3次,因此,在平均情况下上述算法所需要的比较次数为

2*(1/3)+3*(1/3)+3*(1/3)= 8/3

即在平均情况下,上述算法需要比较8/3次。

在最坏情况下,上述算法需要比较3次(当b或c为中数时)。

第二章

选择题

1、下列排序方法中,哪一个是稳定的排序方法()。归并排序稀尔排序

堆排序快速排序

[A] 教师批改:A

2、设输入序列为1,2,3,4,借助一个栈得到的输出序列可以是()。3,4,1,2 4,2,1,3

4,1,2,3 1,3,4,2

[D] 教师批改:D

3、用数组A[m]存放循环队列的元素值,若其头尾指针分别为front和rear,则循环队列中当前元素的个数为()。(rear+front)%m (rear-front+m)%m

(rear-front)%m (rear-front+1)%m

[D] 教师批改:B

4、对于下三角矩阵A,若采用一个一维数组B以行为主顺序存放压缩矩阵A,则A43存放在()中. B7 B8

B9 B10

[C] 教师批改:C

5、深度为5的二叉树至多有()个结点。16 32

31 10

[C] 教师批改:C

6、一个有n个顶点的无向图最多有()条边。n n(n-1)

n(n-1)/2 2n

[C] 教师批改:C

7、下列说法不正确的是()。线性表可以顺序存储线性表可以链式存储

线性表在顺序存储下可以对分查找线性表在链式存储下可以对分查找

[D] 教师批改:D

8、栈和队列的共同点是()。都是先进后出都是先进先出

只允许在端点处插入和删除元素没有共同点

[C] 教师批改:C

9、若进栈序列为A、B、C、D(进栈过程可以出栈),不可能得到的出栈序列是()。A、D、

C、B B、C、

D、A

C、A、

D、B C、D、B、A

[C] 教师批改:C

10、在一个单链表中,若p结点不是最后一结点。在p结点之后插入s结点的正确操作是()。s->next=p。p->next=s。s->next=p->next 。p->next=s。

s->next=p。p=p。p->next=s。s->next=p。

[B] 教师批改:B

11、由3个结点可以构造出多少种不同的二叉树()。2 4

5 8

[C] 教师批改:C

填空题

27、若一棵完全二叉树共有100个结点,则其叶子结点数为()。

教师批改:50

28、在单链表中设置(表)头结点的作用是()。

教师批改:简化插入,删除算法,方便运算的实现。

29、结点最少的树为(),结点最少的二叉树为()。

教师批改:只有一个(根)结点的树。

空的二叉树。

34、在一棵二叉树中有30个叶子结点,仅有一个孩子的结点有20个,则该二叉树结点数为()。

教师批改:79

35、在线性表的散列存储中,处理冲突有()和()两种方法。

教师批改:拉链法、开地址法

36、已知一棵二叉树的中序遍历序列和后序遍历序列分别为BDCEAFHG和DECBHGFA,试写出其前序遍历序列。

教师批改:前序遍历:ABCDEFGH

30、数据的()结构与数据元素本身的内容、形式、个数和相对位置无关。

教师批改:逻辑

31、数据的存储结构有四种基本的存储映射方式:顺序、()、索引和()存储方式。教师批改:链式、散列

32、用顺序方法将完全二叉树的结点逐层存放在数组A[1]~A[n]中,若结点A[i] 有右子

相关文档
最新文档