2016年贵州民族大学信息工程学院数据结构与算法之数据结构(同等学力加试)复试笔试最后押题五套卷
● 摘要
一、选择题
1. 在虚拟存储管理中,地址变换机构将逻辑地址变换为物理地址,形成该逻辑地址的阶段是( )。
A. 编辑
B. 编译
C. 链接
D. 装载
答:B
【解析】程序的编辑阶段一般都是程序员能够识别的高级语言或低级语言的文本,不涉及到任何与计算机运 行相关的事;编译是由编译程序将用户源代码编译成若干个目标模块,源地址编译成目标程序时,会形成逻辑地址;链接是由链接程序将编译后形成的一组目标模块,以及所需库函数链接,形成完整的装入模块;装入是由装入程序将装入模块装入内存。
2. 一棵非空的二叉树的前序序列和后序序列正好相反,则该二叉树一定满足( )。
A. 其中任意一个结点均无左孩子
B. 其中任意一个结点均无右孩子
C. 其中只有一个叶结点
D. 其中度为2的结点最多为一个
答:C
【解析】前序序列是“根左右”,后序序列是“左右根”,若要这两个序列相反,只有单支树才有可能,所以本题的A 项和B 项均对,单支树的特点是只有一个叶结点,故C 项是最合适的。A 项或B 项都不全。
3. 用不带头结点的单链表存储队列,其队头指针指向队头结点,队尾指针指向队尾结点,则在进行出队操作时( )。
A. 仅修改队头指针
B. 仅修改队尾指针
C. 队头、队尾指针都可能要修改
D. 队头、队尾指针都要修改
答:C
【解析】用不带头结点的单链表存储队列,一般删除操作仅修改队头指针,但当队列中只有
一个结点时,进行删除操作要将队头、队尾指针都修改成NULL 。
4. 一个C 语言程序在一台32位机器上运行。程序中定义了3个变量x 、Y 和z ,其中x 和z 为int 型,Y 为short 型。当x=127,Y=-9时,执行赋值语句z=x+Y后,x 、Y 和z 的值分别是( )。
A.x=0000007FH, Y=FFF9H, z=00000076H
B.x=0000007FH, Y=FFF9H, z=FFFF0076H
C.x=0000007FH, Y=FFF7H, z=FFFF0076H
D.x=0000007FH, Y=FFF7H, z=00000076H
答:D
【解析】当两个不同长度的数据,要想通过算术运算得到正确的结果,必须将短字长数据转换成长字长数据,这被称为“符号扩展”。例如,x 和z 为int 型,数据长32位,Y 为short 型,数据长16位,因此首先应将y 转换成32位的数据,然后再进行加法运算。运算采用补码的形式,而x 的补码是0000007FH , Y 的补码是FFFFFFF7H , 所以x+Y=00000076H。
5. 下列关于中断方式和DMA 方式比较的叙述中,错误的是( )
A. 中断方式请求的是方式请求的是CPU 处理时间,DMA 方式请求的是总线使用权
B. 中断响应发生在一条指令执行结束后,中断响应发生在一条指令执行结束后,DMA 响应发生在一个总线事务完成后
C. 中断
D. 中断
部设备
答:D
【解析】中断处理方式:在
与设备输入每个数据的过程中,由于无需CPU 干预,因而可使CPU
设备并行工作。仅当输完一个数据时,才需CPU 花费极短的时间去做些中断处理。因此中方式下数据传送通过软件完成,方式下数据传送通过软件完成,DMA 方式下数据方式适用于所有外部设备,方式适用于所有外部设备,DMA 方式仅适用于快速外传送由硬件完成 断申请使用的是CPU 处理时间,发生的时间是在一条指令执行结束之后,数据是在软件的控制下完成传送。而DMA 方式与之不同。DMA 方式:数据传输的基本单位是数据块,即在CPU 与设备之间,每次传送至少一个数据块,DMA 方式每次申请的是总线的使用权,所传送的数据是从设备直接送入内存的或者相反;仅在传送一个或多个数据块的开始和结束时,才需 CPU 干预,整块数据的传送是在控制器的控制下完成的。答案D 的说法不正确。
6. 已知循环队列存储在一维数组中,且队列非空时front 和rear 分别指向队头元素和队尾元素。若初始时队列为空,且要求第1个进入队列的元素存储在A[0]处,则初始时front 和rear 的值分别是( )。
A.0, 0
B.0, n-1
C.n-1, 0
D.n-1, n-1
答:B
【解析】题目要求队列非空时front 和rear 分别指向队头元素和队尾元素,若初始时队列为空,且要求第1 个进入队列的元素存储在A[0]处,则此时front 和rear 的值都为0。由于进队操作要执行(rear+1) % n,则初始 时front 的值为0、rear 的值为n-1。
7. 下列关于银行家算法的叙述中,正确的是( )
A. 银行家算法可以预防死锁
B. 当系统处于安全状态时,系统中一定无死锁进程
C. 当系统处于不安全状态时,系统中一定会出现死锁进程
D. 银行家算法破坏了死锁必要条件中的“请求和保持”条件
答:B
【解析】银行家算法是避免死锁的方法。利用银行家算法,系统处于安全状态时没有死锁进程,故答案选B 。
8. 设有两个串S1和S2, 求S2在S1中首次出现的位置的运算称作( )。
A. 求子串
B. 判断是否相等
C. 模型匹配
D. 连接
答:C
【解析】常用的串的基本操作有七种,INDEX (s ,t )是其中的定位函数,这种运算就是所说的模式匹配。
9. 稀疏矩阵一般的压缩存储方法有两种,即( )。
A. 二维数组和三维数组
B. 三元组和散列
C. 三元组和十字链表
D. 散列和十字链表
答:C
【解析】稀疏矩阵一般的压缩方法为三元组表和十字链表。三元组表就是将非零元素及其对应的行和列构成一个三元组(行标,列标,值)。十字链表相比三元组表而言,主要是对每个结点增加了两个链域。如果数组经常运算时,会产生大量数据元素的移动,此时,采用链表存储结构更为恰当。
10.下列文件物理结构中,适合随机访问且易于文件扩展的是( )。
A. 连续结构
B. 索引结构