1、数据对象是指____。
- A:描述客观事物且由计算机处理的数值、字符等符号的总称
- B:数据的基本单位
- C:性质相同的数据元素的集合
- D:相互之间存在一种或多种特定关系的数据元素的集合
解析
数据对象:是性质相同的数据元素的集合,是数据元素的子集,数据对象是一种运行时的概念,可以是外部实体(例如,专产生或使用信息的任何事物)、事物(例如,报表)、行为(例如,打电话)、事件(例如,响警报)、角色(例如,教师、学生)、单位(例如,会计科)、地点(例如,仓库)或结构(例如,文件)等。总之,可属以由一组属性来定义的实体都可以被认为是数据对象。
答案:C
2、假设有n个顶点e条边的有向图用邻接表表示,删除与某个顶点v相关的所有边的算法的时间复杂度为_____。
- A:O(n)
- B:O(e)
- C:O(n+e)
- D:O(n*e)
解析
删除与某个顶点v相关的所有边的过程:先删除下标为v的顶点表节点的单链表,出变数最多为n-1,对应时间复杂度为O(n),再扫描所有边表的结点,删除所有的顶点V的入边,对应的时间复杂度为O(e)。故总的时间复杂为O(n+e)。选C。
答案:C
3、以下属于逻辑结构的是____。
- A:顺序表
- B:哈希表
- C:有序表
- D:单链表
解析
数据的逻辑结构是对数据元素之间的逻辑关系的描述。顺序表、哈希表和单链表属于存储结构。
答案:C
4、算法的时间复杂度主要用____方法来计算。
- A:后期测试
- B:事前估计
- C:事后估计
- D:统计算法中所有的程序步数
解析
一个算法的事件复杂度通常包括空间复杂度和时间复杂度。一般是统计算法中所有程序的执行步数来计算。
答案:D
5、算法的时间复杂度取决于_____。
- A:问题规模
- B:待处理数据的初态
- C:A和B
- D:与A和B无关
解析
问题规模是指算法复杂程度,n级别,logn平方级别。
初态指的就是处理数据是否有序这种信息。
时间复杂度与问题规模有关,问题规模越大,需要的时间就越长,也跟初始状态有关,初始状态越乱,需要的时间也越长。
答案:C
6、下面是有关抽象数据类型概念的论述,其中正确的说法是____。
- A:抽象数据类型与存储结构有关
- B:抽象数据类型与数据结构是同义词
- C:抽象数据类型是指一个数学模型以及定义在该模型上的一组擦欧总
- D:抽象数据类型是指描述客观事物且由计算机处理的数值、字符等符号的总称
解析
抽象数据类型是与表示无关的数据类型,是一个数据模型及定义在该模型上的一组运算,与存储结构无关;对一个抽象数据类型进行定义,须给出它的名字及各运算的运算符名,并且规定这些函数的参数性质。
答案:C
7、链式存储结构中,每个数据的存储结点里____指向邻接存储结点的指针,用以反映数据间的逻辑关系。
- A:只能有1个
- B:只能有2个
- C:只能有3个
- D:可以有多个
解析
在链式存储中,结点间的逻辑关系是由附加的指针表示。而数据的逻辑关系包括线性和非线性,线性指数据间存在一对一的关系,非线性指数据间存在一对多的关系,所以选D。
答案:D
8、下列排序算法中,____、____是稳定排序,____、____属于不稳定排序。
- A:起泡排序
- B:快速排序
- C:插入排序
- D:堆排序
解析
稳定排序就是能保证前2个相等的数在序列的前后顺序和排序后它们两个的前后顺序相同。比如,如果 = ,原来在位置前,排序后还是要在位置前。快速排序和堆排序在排序前后相同元素的位置有可能会交换,因此不是稳定排序。
答案:A,C,B,D
9、8个关键字的3阶B树,高度最大为____,最小为____。
- A:2
- B:3
- C:4
- D:5
解析
3阶B树每个节点最多有3棵子树和2个关键字。
层数最高则所有节点的关键字数量最少。每个节点都是1个关键字的时候层数可以达到最多,此时为4层。
层数最低则所有节点的关键字都最多。根节点最多2个关键字,叶子节点最多2个关键字,所以除了1个根节点再有3个叶子节点时层数最少,此时为2层。B树需要保证绝对平衡,最多只能达到3层。
答案:B,A
10、评价一个算法的优劣可能涉及以下哪些方面____。
- A:正确性
- B:可读性
- C:健壮性
- D:时间复杂度和空间复杂度
解析
正确性:算法应该能够解决问题
可读性:算法应该易于理解
健壮性:即使输入非法数据,算法也能够进行相应的处理
时间复杂度和空间复杂度:算法应该效率高、存储量低