数据结构与操作系统考研试题
- 格式:pdf
- 大小:1.04 MB
- 文档页数:3
山东科技大学
2018年硕士研究生入学考试试题
考试科目:数据结构与操作系统 科目代码:823
《数据结构》部分
一、简答题(30分,每题5分)
1、串、数组、广义表从元素间关系上可以看成线性结构,它们与
一般意义上的线性表相比有何特殊性?
2、借助栈可以实现更复杂的操作,请简述如何利用栈实现对表达
式中括号是否匹配的检验。
3、基于关键字比较的查找算法所能达到最优时间复杂度是?能否
设计一种与问题规模无关的查找算法?请给出基本思路。
4、图的广度优先遍历与树的何种遍历策略相似?请给出简单解释。
5、《数据结构》中经常采用“树形化组织”的方式来整理数据,
比如折半查找表、二叉排序树、大顶堆/小顶堆等,请简述这样
做的优点。
6、何为稳定的排序方法?何为不稳定的排序方法?哪些排序算法
是不稳定的?
二、综合应用题(40分,每题10分)
1、假设用于通信的电文共有8个字母A,B,C,D,E,F,G,H组成,字
母在电文中出现的频率分别是{0.2,0.04,0.06,0.02,0.12,
0.24,0.25,0.07}。
①试为这8个字符设计哈夫曼编码;
②试设计另一种由二进制表示的等长编码方案;。
苏州大学2014年硕士研究生入学考试初试试题科目代码:872 科目名称:数据结构与操作系统满分:150分注意:①认真阅读答题纸上的注意事项;②所有答案必须写在答题纸上;③本试题纸须同答题纸一并交回。
一、数据结构部分注意:算法可以用类C、类C++、类JAVA或类PASCAL等语言编写,并请写出类型说明。
1.判断,若错,改正。
15分(1) 在一个图中,所有顶点度数之和等于所有边的总数。
(2) 快排在被排序的数据已经基本有序的情况下最易发挥长处。
(3) 求子串的定位操作成为串的模式匹配。
2.Dijkstra用途,思想,验证其正确性,及图的数据结构。
3.将数的质因数分解并按递减顺序写成一个有序单链表。
如:2100->7.5.5.3.2.24.二叉链的二叉树,递归,验证是否严格二叉。
(无度为1的结点)5.顺序表,整数,长为n,尽可能高效求得第n/4个元素。
二、操作系统部分6、判断,若错,改正。
15分(1)任何操作系统中,系统资源分配最小单位为线程。
(2)死锁的进程必然至少一个互斥资源。
(3)虚拟存储器大小为内外存之和。
(4)文件访问效率有两个,物理结构和逻辑结构。
(5)spooling可以减少进程上下文切换次数。
7、从文件逻辑结构,物理结构和文件目录三方面入手,举实例说明如何提高存取速度(还是效率?就那个意思!)。
8、资源共享,创建和结束三方面说明进程和它创建的子进程,进程和他创建的线程之间的关系。
9、分页存储(二级页表),页表存于内存:(1) 一次访问内存200NS,求访问一个内存单元多少时间。
(2) 若三级页表,多少时间?(3) 引入联想寄存器,90%的页表项可在快表中命中,则一次访存时间?(假设一次快表10NS)(4) 若虚拟存储,页面命中率80%,缺页处理5万NS/次,则一个内存单元多少时间?(5) 采用虚拟存储,命中率80%,缺页时有10%需要置换(不用置换的缺页处理4万NS/次,否则8万NS/次),同问。
一、单项选择题1. 下列对顺序存储的有序表(长度为n)实现给定操作的算法中平均时间复杂度为O(1)的是()。
A、查找包含指定值元素的值B、插入包含指定值元素的算法C、删除第i(1≤i≤n)个元素的算法D、获取第i(1≤i≤n)个值的算法2、现有非空双向链表L,其结点结构为,prev是指向直接前驱结点的指针,next是指向直接后继结点的指针。
若要在L中指针p 所指向的结点(非尾结点)之后插入指针s指向的新结点,则在执行了语句序列:“s->next=p->next;p->next=s;”,后,还要执行()。
A、s->next->prev=p;s->prev=p;B、p->next->prev=s;s->prev=p;C、s->prev=s->next->prev; s->next->prev=s;D、p->next->prev=s->prev;s->next->prev=p;3、若采用三元组表存储结构存储稀疏矩阵M,则除三元组外,下列数据中还需要保存的是()。
I. M的行数;II.M中包含非零元素的行数;III.M的列数;IV.M中包含非零元素的列数。
A、仅I、IIIB、仅I、IIC、仅III、IVD、I、II、III、IV4、在由6个字符组成的字符集S中,各个字符出现的频次分别为3,4,5,6,8,10,为S构造的哈夫曼树的加权平均长度为()。
A、2.4B、2.5C、2.67D、2.75注:每个关键字的查找长度为:图片加权平均长度为:(3×3+3×4+3×5+3×6+2×8+2×10)/(3+4+5+6+8+10)=2.5。
如果不考虑权重,会错误计算为(3+3+3+3+2+2)/6≈2.67,从而误选C。
5、已知一棵二叉树的树形如下图所示,若其后序遍历为fdbeca,则其先序列为()。
数据结构考研真题及其答案完整版数据结构是计算机科学与技术领域中的一门重要课程,也是计算机考研中必考的一门科目。
通过研究数据结构,可以帮助我们更好地理解和应用计算机算法,提高计算机程序的效率和性能。
为了帮助考生更好地备考数据结构,本文将分享一些数据结构考研真题及其答案,供考生参考。
一、选择题1. 下列关于栈的叙述中,错误的是()A. 栈是一种线性数据结构,具有后进先出(LIFO)的特点B. 栈可以用数组实现,也可以用链表实现C. 栈的插入和删除操作都是在同一端进行的D. 栈的插入和删除操作的时间复杂度都是O(1)答案:C解析:栈的插入操作叫做入栈,删除操作叫做出栈。
入栈和出栈操作都是在栈顶进行的,而不是同一端。
2. 假设要对n个整数关键字进行排序,以下排序算法中,平均时间复杂度最小的是()A. 冒泡排序B. 快速排序C. 归并排序D. 直接插入排序答案:C解析:归并排序的时间复杂度是O(nlogn),平均时间复杂度最小。
二、填空题1. 下列关于图的遍历顺序的说法中,正确的是:深度优先搜索访问的顺序是________,广度优先搜索访问的顺序是________。
答案:前序遍历,层次遍历解析:深度优先搜索即前序遍历,广度优先搜索即层次遍历。
2. 给定一个最小堆,若删除堆顶元素后,需要对堆进行调整,所采用的操作是________。
答案:下滤解析:删除堆顶元素后,将最后一个叶子节点放到堆顶,然后进行下滤操作。
三、简答题1. 请简要说明动态规划算法的基本思想和应用场景。
答:动态规划算法的基本思想是将问题分解为多个子问题,通过求解子问题的最优解来得到原问题的最优解。
它通常适用于具有重叠子问题和最优子结构性质的问题。
动态规划算法可以大大减少问题的重复计算,提高算法的效率和性能。
它在求解最短路径、最长公共子序列、背包问题等具有广泛的应用。
2. 请简要介绍红黑树的特点和应用场景。
答:红黑树是一种自平衡的二叉查找树,它具有以下特点:1) 每个节点都有一个颜色,红色或黑色;2) 根节点是黑色的;3) 叶子节点(NIL节点)都是黑色的;4) 如果一个节点是红色的,则它的两个子节点都是黑色的;5) 从根节点到叶子节点的路径上,不同路径上黑节点的个数相同。
中国计量大学
2020年硕士研究生招生考试试题
考试科目代码:806考试科目名称:数据结构与操作系统所有答案必须写在报考点提供的答题纸上,答在试卷或草稿纸上无效。
一、单项选择题(共30题,每小题2分,共60分)
1.关于下面两个程序段,描述正确的是( )。
程序段1:
double fun1(int n)
{ if( n = = 1 )
return 1;
return n * fun( n - 1 );
}
程序段2:
double fun2(int n)
{ double s = 1;
for(int i=2; i<=n; i++)
s *= i;
return s;
}
A.两个程序段的时间复杂度相同 B.fun1的时间复杂度小于fun2
C.fun1的时间复杂度大于fun2 D.fun1的实际运行时间小于fun2
2.对一个已经有序的数据序列进行排序操作,下面的描述正确的是( )。
A.快速排序的时间复杂度是O(N)
B. 归并排序的时间复杂度是O(N)
C.选择排序的时间复杂度是O(N) D.插入排序的时间复杂度是O(N)
3.对于只在表的一端进行删除和插入操作的线性表,宜采用的存储结构为( )。
A. 队列
B. 顺序表
C. 栈
D. 双向链表
《数据结构与操作系统》试卷第1页共9 页。
山东科技大学2007年招收硕士学位研究生入学考试
数据结构与操作系统试卷
数据结构部分
注意事项:
1、算法应说明基本思路,应对主要数据类型、
变量给出说明,所写算法应结构清晰、简明易懂,
应加上必要的注释。
2、算法可用(类)PASCAL语言、(类)C语言等你
所熟悉的高级语言编写,但要注明语种。
一、解答下列问题[每小题4分,共16分]:
1、[4分]为什么要分析算法的时间复杂度?
2、[4分]简述代码区、全局数据区、栈区、堆区
在程序运行时的作用。
3、[4分]求模式串s=’aaaabc’的next及nextval
函数。
4、[4分]证明根据森林的先序序列与中序序列
可以唯一确定一个森林。
二、综合应用题[每小题8分,共24分]:
1、[8分]推导满k叉树上的叶子结点数n0和非
叶子结点数n1之间的关系(即用k和n1表示n
0)。