北京林业大学计算机导论试题,2017年北京林业大学信息学院821计算机综合考研题库...

一、填空题

1. 索引顺序文件既可以顺序存取,也可以_____存取。

【答案】随机

2. 关键码序列(Q ,H ,C ,Y ,Q ,A ,M ,S ,R ,D ,F ,X ),要按照关键码值递增的次序进行排序,若采用初始步长为4的希尔排序法,则一趟扫描的结果是_____; 若采用以第一个元素为分界元素的快速排序法,则扫描一趟的结果是_____。

【答案】(Q ,A ,C ,S ,Q ,D ,F ,×,R ,H ,M ,Y ); (F ,H ,C ,D ,a ,A ,M ,Q ,R ,S ,Y ,X )

【解析】希尔排序的基本思想是:先将整个待排记录序列分割成为若干子序列分别进行直接插入排序,待整个序列中的记录“基本有序”时,再对全体记录进行一次直接插入排序。

快速排序(quicksort )的基本思想是,通过一趟排序将待排记录分割成独立的两部分,其中一部分记录的关键字均比另一部分记录的关键字小,则可分别对这两部分记录继续进行排序,以达到整个序列有序。

3. 数据结构中评价算法的两个重要指标是_____。

【答案】算法的时间复杂度和空间复杂度

4. 从用户的观点看,文件的逻辑结构通常可以区分为两类:一类是如NdBASE 中数据库文件那样的文件组织结构,称为_____文件:另一种是诸如用各种文字处理软件编辑成的文本文件,称为_____文件。从文件在存储器上的存放方式来看,文件的物理结构往往可区分为三类,即_____,_____和_____。B+树适用于组织_____的索引结构,m

个关键码。

【答案】数据库;文本;顺序组织;随机组织;链组织;随机组织;

5. 设m 、n 均为自然数,m 可表示为一些不超过n 的自然数之和,f (m , n )为这种表示方式的

数目。例f (5, 3)=5,有5种表示方式:3+2, 3+1+1,2+2+1,2+1+1+1, 1+1+1+1+1。

①以下是该函数的程序段,请将未完成的部分填入,使之完整。

第 2 页,共 54 页 树每个结点至多有_____个儿子,除根结点外每个结点至少有_____个儿子,根结点至少有_____个儿子,有k 个儿子的结点必有_____

②执行程序,f (6,4)=_____。

【答案】①1; 1; f (m ,n -1); n ②9

6. 设正文串长度为n ,模式串长度为m ,则串匹配的KMP 算法的时间复杂度为_____。 【答案】

7. 栈是_____的线性表,其运算遵循_____的原则。

;后进先出 【答案】操作受限(或限定仅在表尾进行插入和删除操作)

8. 在双向循环链表中,向P 所指的结点之后插入指针f 所指的结点,其操作是_____、_____、_____、_____。 【答案】

9. 已知链队列的头尾指针分别是f 和r , 则将值x 入队的操作序列是_____。 【答案】

【解析】队列采用链式存储结构,先分配一个节点的内存,然后在队尾添加该节点。

10.设单链表的结点结构为为指针域,已知指针px 指向单链表中data 为x 的结

_____;点,指针py 指向data 为y 的新结点,若将结点y 插入结点x 之后,贝懦要执行以下语句:

_____; 【答案】

11.高度为4的3阶B-树中,最多有_____个关键字。

【答案】26

【解析】第4层是叶结点,1层至3层每个结点两个关键字,每个节点的关键字达到最大时,关键字最多。

12.执行顺序查找时,存储方式可以是_____,折半查找时,要求线性表_____,分块查找时要求线性表_____,而哈希表的查找,要求线性表的存储方式是_____。

【答案】顺序存储或链式存储;顺序存储且有序;块内顺序存储,块间有序;散列存储

二、选择题

第 3 页,共 54 页

13.知一棵二叉树的前序遍历结果为ABCDEF ,中序遍历结果为CBAEDF ,则后序遍历结果为( )。

A.CBEFDA

B.FEDCBA

C.CBEDFA

D. 不定

【答案】A

【解析】由前序结果可知A 为根节点,再由中序遍历结果知BC 为A 的左孩子,且C 为B 的左孩子结点,到此可排除B 项,按照这种逻辑依次推理,便可得出结果对于该类型题目,可以先根据前序遍历结果和中序遍历结果画出二叉树,然后后序遍历二叉树得到后序遍历序列。

14.若一个用户进程通过read 系统调用读取一个磁盘文件中的数据,则下列关于此过程的叙述中,正确的是( )。

I. 若该文件的数据不在内存,则该进程进入睡眠等待状态;II. 请求read 系统调用会导致CPU 从用户态切换到核心态;III. read系统调用的参数应包含文件的名称

A. 仅 I 、II

B. 仅 I 、III

C. 仅 II 、III

D.I 、II 和III

【答案】A

,原进程【解析】对于I ,当所读文件的数据不再内存时,产生中断(缺页中断、缺段中断)

,直到所需数据从外村调入内存后,将该进程唤醒,使其变为就绪进入睡眠等待状态(阻塞状态)

状态。对于II , read系统调 用CPU 将从用户态切换到核心态,从而获取操作系统提供的服务。对于III ,在操作系统中,要读一个文件首先要open 系统调用将该文件打开。Open 系统调用的参数需要包含文件的路径名与文件名,而read 系统调用只需使用open 返回的文件描述符,并不使用

Read 系统调用要求用户提供三个输入参数:文件名作为参数。①文件描述 符;②buf 缓冲区首址;

③传送的字节数n 。read 系统调用的功能是试图从fd 所指示的文件中读入n 个字节的数据,并将它们送至由指针buf 所指示的缓冲区中。

15.设计一个判别表达式中左、右括号是否配对出现的算法,采用( )数据结构最佳。

A. 线性表的顺序存储结构

B. 队列

C. 线性表的链式存储结构

D. 栈

【答案】D

【解析】用栈更合适,如果是左括号,进找;如果是右括号,看栈顶是不是左括号,如果是,

则左括号出栈;否则不配对(可以直接结束算法)。处理完所有符号号,如果栈为空则配对成功。

第 4 页,共 54 页

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值