2018年北京信息科技大学计算机学院814数据结构和C语言程序设计[专业硕士]之数据结构考研基础五套测试题
● 摘要
一、填空题
1. 表达式23+((12*3﹣2)/4+34,5/7) +108/9的后缀表达式是_____。 【答案】(表达式中的点(.)是数分隔符,如是三个数)
2. 根据线性表的链式存储结构中每一个结点包含的指针个数,将线性链表分成_____和_____;而又根据指针的连接方式,链表又可分成_____和_____。
【答案】单链表;双链表;(动态) 链表;静态链表
【解析】线性表的链式存储结构根据每个结点包含的指针个数分为单链表和双链表,单链表只包含一个指针,指向后续元素,双链表包括两个指针,指向前一个元素和后续元素。根据指针的连接方式,链表可分为动态链表和静态链表。静态链表的指针指向下一个元素的编号,动态链表的指针指向下一个元素的物理位置。
3. 已知;;ASSIGN(S,U) ;ASSIGN(V,SUBSTR(S,INDEX(S,t) ,LEN(t)+1))
:
【答案】 ,求REPLACE(S,V ,m) =_____。
4. 空格串是指_____,其长度等于_____。
【答案】由空格字符(ASCII值32) 所组成的字符串;空格个数
5. 在基于关键字比较且时间为
【答案】归并;堆
_ 的排序中,若要求排序是稳定的,则可选用_____排序;若要求就地排序(及辅助空间为O(1)),则可选用_____排序。
二、单项选择题
6. 某计算机的控制器采用微程序控制方式, 微指令中的操作控制字段采用字段直接编码法, 共有33个微命令, 构成5个互斥类, 分别包含7、3、12、5和6个微命令, 则操作控制字段至少有 ( )。
A.5位
B.6位
C.15位
D.33位
【答案】C 。
33个微命令分成5个互斥类(即5个字段) , 根据每个类中微命令的多少可以分别确定【解析】
字段的长度为3、2、4、3、3位, 又因为采用直接编码方式, 所以它们之和
作控制字段的位数。
7. 有n(n>0) 个分支结点的满二叉树的深度是( )。
A.n 2﹣l
B.log 2(n+1) +1
C.log 2(n+1)
D.log 2(n—1)
【答案】C
【解析】满二叉树的结点总数=分支的结点总数+非分支的结点总数。由于此树为满二叉树,
所以非分支的结点总数为1,所以满二叉树共有n +1个结点,所以满二叉树的深度为log 2 (n+1) 。
8.
操作系统的子系统通常由四个层次组成, 每一层明确定义了与邻近层次的接口。其合理的层次组织排列顺序是( )。
A. 用户级
B. 用户级
C. 用户级
D. 用户级
【答案】A 。
【解析】对于一次设备的调用, 操作系统为用户准备了系统调用的接口, 当用户使用设备时, 首先在用户程序中发起一次系统调用, 操作系统的设备无关层软件接到该调用请求后调用处理程序进行处理, 根据调用格式和形参, 再转到相应的设备驱动程序去处理; 大部分设备在运行时是需要时间的, 所以设备驱动程序会以中断方式驱动设备, 即设置好控制寄存器参数和中断向量等参数后阻塞自己; 当设备准备好或所需数据到达后设备硬件发出中断, 设备驱动程序唤醒, 将数据按上述调用顺序逆向回传到用户程序中, 或继续驱动设备执行下一条指令。因此,
为四个层次:用户层、与设备无关的软件层、设备驱动程序以及中断处理程序。
9.
参考模型的网络层提供的是( )。
A. 无连接不可靠的数据报服务
B. 无连接可靠的数据报服务
C. 有连接不可靠的虚电路服务
D. 有连接可靠的虚电路服务
【答案】A
【解析】TCP/IP的网络层向上只提供简单灵活的、无链接的、尽最大努力交付的数据服务, 因此答案是A 。
也就是操软件、设备无关软件、设备驱动程序、中断处理程序 软件、设备无关软件、中断处理程序、设备驱动程序 软件、设备驱动程序、设备无关软件、中断处理程序 软件、中断处理程序、设备无关软件、设备驱动程序 软件从上到下分
10.在缺页处理过程中, 操作系统执行的操作可能是( )。
Ⅰ. 修改页表
Ⅱ. 磁盘
Ⅲ. 分配页框
A. 仅Ⅰ、Ⅱ
B. 仅Ⅱ
C. 仅Ⅲ
D. Ⅰ、Ⅱ和Ⅲ
【答案】D
【解析】首先我们要考虑的是, 为什么会发生缺页中断? 当然, 在一个采用虚拟存储管理技术的系统中, 程序是部分装入的, 还有部分是处于外存上的, 因此, 当需要访问那部分位于外存上的代码或数据时, 系统会产生缺页中断。产生缺页中断的目的是要将位于外存上的代码或数据装入内存, 据此, 缺页中断接下去所做的工作就是首先要在内存中找到空闲页框并分配给需要访问的页(若没有空闲的页面则要调用页面置换程序找到一处页面, 将该页面的内容处理掉, 或回写磁盘, 或覆盖掉, 然后将此页分配给需要访问的页) , 分配妥当以后,
缺页中断处理程序调用设备驱动程序做磁盘
, 将位于外存(一般是磁盘) 上的页面调入内存, 调入后转身去修改页表, 将页表中代表该页是否在内存的标志位(一般称为存在位或有效位、在位位) 修改为“真”, 将物理页框号填入相应位置, 若必要还需修改其它相关表项等。完成上述任务后, 缺页中断处理程序返回, 继续程序的执行。从上述过程可以看出, 涉及的相关处理非常多, 因此, 答案就显而易见了。
11.循环队列A[0..m﹣1]存放其元素值,用front 和rear 分别表示队头和队尾,则当前队列中的元素数是( )。
A.(rear﹣front +m)%m
B.rear ﹣front +1
C.rear ﹣front ﹣1
D.rear ﹣front
【答案】A
【解析】对于循环队列,需要深刻理解队头(font)和队尾(rear)的概念,在队头进行出队操作,在队尾进行进队操作。rear-front 可能为正也可能为负,为正时元素个数=(rear-front);如果为负则元素的个数=(rear-front+m),所以统一的公式就是(rear-front+m)%m。
12.5个字符有如下4种编码方案, 不是前缀编码的是( )
A.01, 0000, 0001, 001, 1
B.011, 000, 001, 010, 1
C.000, 001, 010, 011, 100
D.0, 100, 110, 1110, 1100
【答案】D
相关内容
相关标签