当前位置:问答库>考研试题

2018年北京工业大学北京未来网络科技创新中心895计算机学科专业基础[专硕]之数据结构考研仿真模拟五套题

  摘要

一、填空题

1. 从平均时间性能而言,_____排序最佳。

【答案】快速

【解析】快速算法的平均时间复杂度为nlogn 。

2. 检索是为了在文件中寻找满足一定条件的记录而设置的操作。检索可以按_____检索。也可以按_____检索;按_____检索又可以有

3. 顺序栈用

检索和_____检索。

【答案】关键字;记录号;记录号;顺序;直接

存储数据,栈顶指针是top ,则值为x 的元素入栈的操作是_____。

【答案】if(top!=n)data[++top]=x ;

【解析】先判断栈是否满,如果不满,元素入栈。否则返回溢出信息。 4. 在进行入栈运算时应先判别栈是否_____:在进行出栈运算时应先判别栈是否_____:当栈中元素为n 个,进行入栈运算时发生上溢,则说明该栈的最大容量为_____。为了增加内存空间的利用率和减少溢出的可能性,由两个栈共享一片连续的空间时,应将两栈的_____分别设在内存空间的两端,这样只有当_____时才产生溢出。

【答案】满;空;n ;栈底;两栈顶指针相邻(即值之差的绝对值为1)

5. 一棵有11个结点的满二叉树有_____个度为1的结点、有_____个分支(非终端) 结点和_____个叶子,该满二叉树的深度为_____。

【答案】

【解析】满二叉树没有度为1的结点,度为0的结点等于度为2的结点个数+1。

6. 在下面的程序段中,对X 的赋值语句的时间复杂度为_____ (表示为n 的函数) 。

【答案】1+(1+2) +(1+2+3) +…+(l+2+…+n) =n(n+1)(n+2)/6,即O(n)

【解析】当i =l 时,赋值语句就被执行了一次。当i =2时,赋值语句被执行了1+2次。当i =3时,赋值语句被执行了1+2+3次。...... 可以推出赋值语句总共被执行了1+(1+2) +(1+2

+3) +…+(l+2+... +n) =n(n+1)(n+2)/6次。

7. 在一个无向图的的邻接表中,若表结点的个数是m ,则图中边的条数是_____条。

【答案】

【解析】对于无向图,在邻接表中,如果存在n 条边,则会有2n 个表结点。

8. —棵左子树为空的二叉树在前序线索化后,其中的空链域的个数为_____。

【答案】2

【解析】只有根结点的做指针为空和最右边的叶结点的右指针为空。

9. G 是一个非连通无向图,共有28条边,则该图至少有_____个顶点。

【答案】9

【解析】求该非连通无向图的最少顶点数,则该图为一个孤立的顶点和一个完全连通图。

10.设T 和P 是两个给定的串,在T 中寻找等于P 的子串的过程称为_____,又称P 为_____。

【答案】模式匹配;模式串

11.以下是用类C 语言写出的算法,该算法将以二叉链表存储的二叉树中的叶结点按从左到右的顺序链成一个带头结点的双向循环链表,链接时,结点的Lchild 域作为前链域,指向结点的直接前驱,结点的Rchild 域作为后链域,指向结点的直接后继。算法中,使用一个顺序栈stack , 栈顶指针为top ,P ,t 为辅助指针,head 为双向循环链表的头指针。试填充算法中的空格,使算法完整。

【答案】

12.阅读下列程序,指出其功能,并写出空格处应填上的语句。

【答案】

【解析】本题是在哈希表

中插入值为item 的元素,如该元素已在哈希表中,报告出错。

二、单项选择题

13.对n 个记录的线性表进行快速排序为减少算法的递归深度,以下叙述正确的是( )。

A. 每次分区后,先处理较短的部分 B. 每次分区后,先处理较长的部分 C. 与算法每次分区后的处理顺序无关 D. 以上三者都不对 【答案】A

【解析】令递归函数为f ,第一次进行递归函数认为递归深度为1,以后从深度为n 的递归函数f 中再调用递归函数f ,此时深度为n+1。整个f 的最大深度为递归深度。

14.某数采用IEEE754单精度浮点数格式表示为C640 0000H, 则该数的值是( )

A. B. C. D. 【答案】A

【解析】IEEE754单精度浮点数格式为C640 0000H表示为二进制格式为 1100 01 10 0100 0000 0000 0000 0000 0000, 转换为标准的格式为:

因此, 浮点数的值为。

15.程序P 在机器M 上的执行时间是20秒, 编译优化后, P 执行的指令数减少到原来的70%而CPI 增加到原来的

A. B.

秒 秒

倍, 则P 在M 上的执行时间是( )

C.14秒