2017年河北工程大学信息与电气工程学院814数据结构考研强化模拟题
● 摘要
一、填空题
1. 对于一个具有n 个结点的单链表,在已知的结点半p 后插入一个新结点的时间. 复杂度为_____,在给定值为x 的结点后插入一个新结点的时间复杂度为_____。
【答案】
【解析】第一种情况只需直接修改指针的指向。第二种情况必须从头结点遍历找到x 的结点。
2. 当广义表中的每个元素都是原子时,广义表便成了_____。
【答案】线性表
【解析】如果每个元素都是原子,则元素不可分。此时的元素是只有一对一的关系,所以广义表变成了线性表。
3. 若不考虑基数排序,则在排序过程中,主要进行的两种基本操作是关键字的_____和记录的_____,
【答案】比较;移动
4. 遍历图的过程实质上是_____,广度优先遍历图的时间复杂度_____; 深度优先遍历图的时间复杂度_____, 两者不同之处在于_____, 反映在数据结构上的差别是_____。
【答案】查找顶点的邻接点的过程;0(n+e); 0(n+e); 访问顶点的顺序不同;队列和栈 【解析】广度优先遍历图使用队列这种数据结构,深度优先遍历图使用栈这种数据结构。
5. 试利用下列栈和串的基本操作完成下述填空题。
initstack (S ) 置S 为空找; push (S , X ) 元素X 入找; pop (S ) 出栈操作; gettop (S ) 返回栈顶元素; sempty (S ) 判找空函数;
置串 判串 返回联接
empty (st ) 判串空函数
{若给定的表达式的前缀式pre 正确,本过程求得和它相应的表达式exp 并返回true , 否则exp
第 2 页,共 49 页
为空串;
是否相等的函数;
之后的串;
length (st ) 返回串st 的长度;
sub (S , i , 1) 返回S 中第i 个字符;
为空串,并返回false 。已知原表达式中不包含括弧,opset 为运算符的集合。)
注意:毎个空格只填一个语句。 【答案】(1)(2)(3)(4)(5)(6)(7)exp (8)(9)exp (10)(11)(12)
取栈顶操作符 操作符取出后,出栈
将pre 的最后一个字符(操作数)加入到中缀式exp 的最后
若ch 是操作数且栈非空,则形成部分中缀表达式
栈S 初始化为空栈 串exp 初始化为空串 判取出字符是否是操作符
如ch 是运算符,则入操作符栈s 判栈8是否为空
若读出ch 是操作数且栈为空,则按出错处理
6. —棵深度为k 的平衡二叉树, 其每个非终端结点的平衡因子均为0,则该树共有_____个结点。
【答案】
【解析】每个非终端结点都是0表示该平衡二叉树没有高度落差。也就是说它是一棵满二叉 树。故结点个数为
7. —个字符串中_____称为该串的子串。
【答案】任意个连续的字符组成的子序列
第 3 页,共 49 页
8. 设为哈夫曼树的叶结点数日,则该哈夫曼树共有_____个结点。
【答案】
【解析】哈夫曼树只有度为0和2的节点。
9. 求最短路径的Dijkstra 算法的时间复杂度为_____。
【答案】
10.数据结构中评价算法的两个重要指标是_____。
【答案】算法的时间复杂度和空间复杂度
二、选择题
11.假定有4个整数用8位补码分别表示为
存放在一个8位寄存器中,则下列运算会发生溢出的是( )。
A.r1×r2 B.r2×r3 C.r1×r4 D.r2×r4 【答案】B
【解析】用补码表示时8位寄存器所能表示的整数范围为
在4个选项中,只有
都未超过127, 不发生溢出。
12.下列选项中,不属于网络体系结构中所描述的内容是( )。
A. 网络的层次 B. 每一层使用的协议 C. 协议的内部实现细节 D. 每一层必须完成的功能 【答案】C
【解析】体系结构仅规定协议的功能和消息格式,但对具体的实现细节由具体设备厂商来确定,对于网络的层次,以及每一个层次的协议及其功能都是网络体系结构所要描述的内容,因此答案为选项C 。
13.计算机开后,操作系统最终被加载到( )
A.BIOS B.ROM C.EPROM D.RAM 【答案】D
第 4 页,共 49 页
若将运算结果
现在4个整数都是负数
,结果溢出,其余3个算式结果