2017年南京师范大学计算机科学与技术学院889计算机技术综合[专业硕士]之数据结构考研题库
● 摘要
一、选择题
1. 若X 是后序线索二叉树中的叶结点, 且X 存在左兄弟结点Y ,则X 的右线索指向的是( )
A.X 的父结点
B. 以Y 为根的子树的最左下结点
C.X 的左兄弟结点Y
D. 以Y 为根的子树的最右下结点
【答案】A
【解析】根据后续线索二叉树的定义,X 结点为叶子结点且有左兄弟,那么这个结点为右孩子结点,利用后续遍历的方式可知X 结点的后继是其父结点,即其右线索指向的是父结点。
2. 若某文件系统索引结点(inode )中有直接地址项和间接地址项,则下列选项中,与单个文件长度无关的因素是( )
A. 索引结点的总数
B. 间接地址索引的级数
C. 地址项的个数
D. 文件块大小
【答案】A
【解析】根据文件长度与索引结构的关系可知,只有选项A 是与单个文件长度无关的。
3. 单链表中,增加一个头结点的目的是为了( )。
A. 使单链表至少有一个结点
B. 标识表结点中首结点的位置
C. 方便运算的实现
D. 说明单链表是线性表的链式存储
【答案】C
【解析】单链表中增加一个头结点的目的是为了方便运算的实现,使得对第一个元素的操作与其它元素的操作相同。
4. 希尔排序的组内排序采用的是( )。
A. 直接插入排序
B. 折半插入排序
C. 快速排序
D. 归并排序
【答案】A
【解析】希尔排序基本思想是:先将整个待排元素序列按某个增量分割成若干个子序列,在子序列内进行直接插入排序,然后依次缩减增量再进行排序,待整个序列中的元素基本有序(增量足够小)时,再对全体元素进行一次直接插入排序。
5. 对同一待排序列分别进行折半插入排序和直接插入排序, 两者之间可能的不同之处是( )。
A. 排序的总趟数
B. 元素的移动次数
C. 使用辅助空间的数量
D. 元素之间的比较次数
【答案】D 。
【解析】折半插入排序所需附加存储空间和直接插入排序相同,从时间上比较,折半插入排序仅减少了关键字间的比较次数,
而记录的移动次数不变。折半插入排序的时间复杂度仍为
所以两者之间的不同只可能是元素之间的比较次数。
6. 下列二叉排序树中,满足平衡二叉树定义的是( )。
【答案】B
【解析】平衡二叉树是指左右子树高度差(平衡因子)的绝对值不超过1的二叉树。A 项中根结点的平衡因子是2; B 项中每个结点的平衡因子的绝对值均不超过1; C 项中根结点的平衡因子是-2; D 项中根结点的平衡因子是3。
7. 某计算机采用微程序控制器,共有32条指令,公共的取指令微程序包含2条微程序,各指令对应的微程序平均由4条微指令组成,采用断定法(下址字段法)确定下条微指令的地址,则微指令中下址字段的位数至少是:( )
A.5
B.6
C.8
D.9
【答案】C 【解析】
所以至少需要8位才能表示完130个地址。
8. 若用一个大小为6的数组来实现循环队列,且当前rear 和front 的值分别为0和3, 当从队列中删除一个元素,再加入两个元素后,rear ,front 的值分别为多少?( )
A.1和5
B.2和4
C.4和2
D.5和1
【答案】B
【解析】入队操作的主要步骤
:
个后
,
9. 设与某资源相关联的信号量初值为3, 当前为1,若M 表示该资源的可用个数,N 表示等待该资源的进程数,则M ,N 分别是( )。
A.0、1
B.1、0
C.1、2
D.2、0
【答案】B
【解析】信号量初值是3表示资源数有3个,当前为1表示已经用掉2个,剩余可用的资源数就只有1个了,由于资源有剩余,可见没有其他进程等待使用该资源,故进程数为0。
10.数据序列只能是下列排序算法中的( )的两趟排序后的结果。
A. 选择排序
B. 起泡排序
C. 插入排序
D. 堆排序
【答案】C
【解析】选择排序、起泡排序和堆排序两趟排序后,在序列的某一端应该有序列的两个最大值或者最小值。
加入一个后,再加入一删除一个后
,出队操作的主要步骤
:
二、判断题
11.倒排文件是对次关键字建立索引。( )
【答案】√
,将所有具有相同【解析】倒排文件是对每一个次关键字项建立次关键字索引(称为倒排表)
次关键字的记录的物理记录号都填入倒排表为此次关键字的表中。