2018年北京市培养单位国家空间科学中心863计算机学科综合(专业)之数据结构考研基础五套测试题
● 摘要
一、填空题
1. 在循环队列中,队列长度为n ,存储位置从0到,n ﹣1编号,以rear 指示实际的队尾元素,现要在此队列中插入一个新元素,新元素的位置是_____。
【答案】
2. —个有2001个结点的完全二叉树的高度是_____。
【答案】11
【解析】完全二叉树的高度
3.
线性表用数组表示,假定删除表中任一元素的概率相同,则删除一个元素平均需要移动元素的个数是_____。
【答案】(n﹣1)/2
【解析】删除第一个元素需要移动n ﹣1次,以此类推,删除最后一个元素需要移动0次。平均次数为(n﹣l)*n/n/2=(n﹣l)/2。
4. 分别采用堆排序,快速排序,起泡排序和归并排序,对初态为有序的表,则最省时间的是_____算法,最费时间的是_____算法。
【答案】起泡;快速
【解析】当初态为有序表时,冒泡排序只需要进行一趟比较即可,此时时间复杂度为O(n),
2而快速排序算 法需要比较的次数达到最大,时间复杂度为O (n) 。
5. 设二维数组A 的行和列的下标范围分别为[0:8]和[0:10],每个元素占2个单元,按行优先顺序存储,第一个元素的存储起始位置为b ,则存储位置为b+50处的元素为_____。
【答案】A[2][3]
【解析】令这个元素的行标为i ,列标为j 。则它的存储位置是(ll*i+j +l ﹣l)*2+b 。当其值为b +50时,则i =2,j =3。
6. 已知链队列的头尾指针分别是f 和r ,则将值x 入队的操作序列是_____。
【答案】S =(LinkedList*)malloc(sizeof (LNode));s ﹣>data =x ;s ﹣>next =r ﹣>next ;r ﹣>next =s ;r =s ;
【解析】队列采用链式存储结构,先分配一个节点的内存,然后在队尾添加该节点。
7. 高度为h 的堆中,最多有_____元素,最少有_____个元素。 【答案】
。当最后一层只有【解析】当这个堆构成的是满二叉树时,元素的个数最多,元素个数为
一个元素时,此时堆的元素个数最少,元素个数为。
8. 二叉树由_____,_____,_____三个基本单元组成。
【答案】根结点;左子树;右子树
9. 如某二叉树有20个叶结点,有30个结点仅有一个孩子,则该二叉树的总结点数为_____。
【答案】69
【解析】二叉树叶结点数为20, 则度为2的结点数为19, 所以总的结点数为20+19+30=69。
10.假定有k 个关键字互为同义词,若用线性探测再哈希法把这k 个关键字存入哈希表中,至少要进行_____次探测。 【答案】
的次数最小。总次数为
。 【解析】当该关键字发生冲突时,用线性探测不会遇到别的关键字冲突,这个时候需要探测二、判断题
11.排序算法中的比较次数与初始元素序列的排列无关。( )
【答案】×
【解析】这个要看是哪个排序算法,比如快速排序,初始序列为有序的情况比较的次数就相对于无序的多。
12.两分法插入排序所需比较次数与待排序记录的初始排列状态相关。( )
【答案】×
【解析】折半插入排序所需的附加存储空间和直接插入排序相同,从时间上比较,折半插入排序仅减少了关 键字间的比较次数,而记录的移动次数不变。因此,折半插入排序的时间复杂度,与待排序记录的初始排列状态无关。 仍为
13.在动态存储管理系统中做空间分配时,最佳适配法与最先适配法相比,前者容易增加闲置空间的碎片。( )
【答案】√
【解析】最佳适配法:将可利用空间表中一个不小于n 且最接近n 的空闲块的一部分分配给用户;最先适配法:从表头指针开始查找可利用空间表,将找到的第一个大小不小于n 的空闲块的一部分分配给用户;从适配法选择上可以看出最佳适配法会增加闲置空间。
14.用向量和单链表表示的有序表均可使用折半查找方法来提高查找速度。( )
【答案】×
【解析】单链表不能使用折半查找方法。折半查找主要用于数据元素有序且存储方式为顺序存储的表。
15.一个广义表可以为其他广义表所共享。( )
【答案】 √
【解析】因为广义表中的元素还可能是表,所以对于一个广义表可以为其他广义表所共享。
16.m 阶B 树的任何一个结点的左右子树的高度都相等。( )
【答案】√
【解析】由B 树的性质得知,叶子结点都处于同一层。因此,m 阶B 树的任何一个结点的左右子树的高度都相等。
17.哈希表与哈希文件的唯一区别是哈希文件引入了“桶”的概念( )
【答案】×
【解析】哈希文件是使用一个函数(算法) 来完成一种将关键字映射到存储器地址的映射,根据用户给出的关键字,经函数计算得到目标地址,再进行目标的检索。哈希表是根据关键码值而直接进行访问的数据结构。
18. 数组可看成线性结构的一种推广,因此与线性表一样,可以对它进行插入,删除等操作。( )
【答案】 ×
【解析】数组在维数和界偶确定后,其元素个数已经确定,不能进行插入和删除运算。
19.采用线性探测法处理散列时的冲突,当从哈希表删除一个记录时,不应将这个记录的所在位置置空,因为这会影响以后的查找。( )
【答案】√
【解析】从哈希表删除一个记录,不是将这个记录的位置置空,而是设置一个标记,标记这个元素是无效的了。
20.倒排序文件的优点是维护简单。( )
【答案】×
【解析】倒排文件的优点是检索记录较快。特别是对某些询问,不用读取记录,就可得到解答。
三、算法设计题