您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 经营企划 > 《数据结构》历年考研真题及解答
《数据结构》考研真题及解答目录2009年试题.............................................................................1填空题.............................................................................1解答题.............................................................................22010年试题.............................................................................2填空题.............................................................................2解答题.............................................................................42011年试题.............................................................................4填空题.............................................................................4解答题.............................................................................52012年试题.............................................................................6填空题.............................................................................6解答题.............................................................................72013年试题.............................................................................8填空题.............................................................................8解答题.............................................................................92014年试题............................................................................10填空题............................................................................10解答题............................................................................112015年试题............................................................................12填空题............................................................................12解答题............................................................................1412009年试题填空题1.为解决计算机与打印机之间速度不匹配的问题,通常设置一个打印数据缓冲区,主机将要输出的数据依次写入该缓冲区,而打印机则依次从该缓冲区中取出数据。该缓冲区的逻辑结构应该是A.栈B.队列C.树D.图2.设栈S和队列Q的初始状态均为空,元素abcdefg依次进入栈S。若每个元素出栈后立即进入队列Q,且7个元素出队的顺序是bdcfeag,则栈S的容量至少是A.1B.2C.3D.43.给定二叉树图所示。设N代表二叉树的根,L代表根结点的左子树,R代表根结点的右子树。若遍历后的结点序列为3,1,7,5,6,2,4,则其遍历方式是A.LRNB.NRLC.RLND.RNL4.下列二叉排序树中,满足平衡二叉树定义的是5.已知一棵完全二叉树的第6层(设根为第1层)有8个叶结点,则完全二叉树的结点个数最多是A.39B.52C.111D.1196.将森林转换为对应的二叉树,若在二叉树中,结点u是结点v的父结点的父结点,则在原来的森林中,u和v可能具有的关系是I.父子关系II.兄弟关系III.u的父结点与v的父结点是兄弟关系A.只有IIB.I和IIC.I和IIID.I、II和III7.下列关于无向连通图特性的叙述中,正确的是I.所有顶点的度之和为偶数II.边数大于顶点个数减1III.至少有一个顶点的度为12A.只有IB.只有IIC.I和IID.I和III8.下列叙述中,不符合m阶B树定义要求的是A.根节点最多有m棵子树B.所有叶结点都在同一层上C.各结点内关键字均升序或降序排列D.叶结点之间通过指针链接9.已知关键序列5,8,12,19,28,20,15,22是小根堆(最小堆),插入关键字3,调整后得到的小根堆是A.3,5,12,8,28,20,15,22,19B.3,5,12,19,20,15,22,8,28C.3,8,12,5,20,15,22,28,19D.3,12,5,8,28,20,15,22,1910.若数据元素序列11,12,13,7,8,9,23,4,5是采用下列排序方法之一得到的第二趟排序后的结果,则该排序算法只能是A.起泡排序B.插入排序C.选择排序D.二路归并排序解答题41.(10分)带权图(权值非负,表示边连接的两顶点间的距离)的最短路径问题是找出从初始顶点到目标顶点之间的一条最短路径。假定从初始顶点到目标顶点之间存在路径,现有一种解决该问题的方法:①设最短路径初始时仅包含初始顶点,令当前顶点u为初始顶点;②选择离u最近且尚未在最短路径中的一个顶点v,加入到最短路径中,修改当前顶点u=v;③重复步骤②,直到u是目标顶点时为止。请问上述方法能否求得最短路径?若该方法可行,请证明之;否则,请举例说明。42.(15分)已知一个带有表头结点的单链表,结点结构为datalink假设该链表只给出了头指针list。在不改变链表的前提下,请设计一个尽可能高效的算法,查找链表中倒数第k个位置上的结点(k为正整数)。若查找成功,算法输出该结点的data值,并返回1;否则,只返回0。要求:(1)描述算法的基本设计思想(2)描述算法的详细实现步骤(3)根据设计思想和实现步骤,采用程序设计语言描述算法(使用C或C++或JAVA语言实现),关键之处请给出简要注释。2010年试题填空题1、若元素a,b,c,d,e,f依次进栈,允许进栈、退栈操作交替进行。但不允许连续三次进行退栈工作,则不可能得到的出栈序列是()A:dcebfaB:cbdaefC:dbcaefD:afedcb2、某队列允许在其两端进行入队操作,但仅允许在一端进行出队操作,则不可能得到的顺序是()3A:bacdeB:dbaceC:dbcaeD:ecbad3、下列线索二叉树中(用虚线表示线索),符合后序线索树定义的是()4、在下列所示的平衡二叉树中插入关键字48后得到一棵新平衡二叉树,在新平衡二叉树中,关键字37所在结点的左、右子结点中保存的关键字分别是()A:13,48B:24,48C:24,53D:24,905、在一棵度为4的树T中,若有20个度为4的结点,10个度为3的结点,1个度为2的结点,10个度为1的结点,则树T的叶节点个数是()A:41B:82C:113D:1226、对n(n大于等于2)个权值均不相同的字符构成哈夫曼树,关于该树的叙述中,错误的是()A:该树一定是一棵完全二叉树B:树中一定没有度为1的结点C:树中两个权值最小的结点一定是兄弟结点D:树中任一非叶结点的权值一定不小于下一任一结点的权值7、若无向图G-(V.E)中含7个顶点,则保证图G在任何情况下都是连通的,则需要的边数最少是()A:6B:15C:16D:218、对下图进行拓补排序,可以得到不同的拓补序列的个数是()4A:4B:3C:2D:19、已知一个长度为16的顺序表L,其元素按关键字有序排列,若采用折半查找法查找一个不存在的元素,则比较次数最多是()A:4B:5C:6D:710、采用递归方式对顺序表进行快速排序,下列关于递归次数的叙述中,正确的是()A:递归次数与初始数据的排列次序无关B:每次划分后,先处理较长的分区可以减少递归次数C:每次划分后,先处理较短的分区可以减少递归次数D:递归次数与每次划分后得到的分区处理顺序无关11、对一组数据(2,12,16,88,5,10)进行排序,若前三趟排序结果如下()第一趟:2,12,16,5,10,88第二趟:2,12,5,10,16,88第三趟:2,5,10,12,16,88则采用的排序方法可能是:A:起泡排序B:希尔排序C:归并排序D:基数排序解答题141.(10分)将关键字序列(7、8、11、18、9、14)散列存储到散列列表中,散列表的存储空间是一个下标从0开始的一个一维数组散列函数维:H(key)=(key×3)MODT,(T为散列表空间规模),处理冲突采用线性探测再散列法,要求装填(载)因子为0.7问题:(1)请画出所构造的散列表;(2)分别计算等概率情况下,查找成功和查找不成功的平均查找长度。42.(13分)设将n(n,1)个整数存放到一维数组R中,试设计一个在时间和空间两方面尽可能有效的算法,将R中保有的序列循环左移P(0﹤P﹤n)个位置,即将R中的数据由(X0X1……Xn-1)变换为(XpXp+1……Xn-1X0X1……Xp-1)要求:(1)给出算法的基本设计思想。(2)根据设计思想,采用C或C++或JAVA语言表述算法关键之处给出注释。(3)说明你所设计算法的时间复杂度和空间复杂度2011年试题填空题1.设n是描述问题规模的非负整数,下面程序片段的时间复杂度是x=2;while(xn/2)edacb5x=2*x;A.O(log2n)B.O(n)C.O(nlog2n)D.O(n2)2.元素a,b,c,d,e依次进入初始为空的栈中,若元素进栈后可停留、可出栈,直到所有元素都出栈,则在所有可能的出栈序列中,以元素d开头的序列个数是A.3B.4C.5D.63.已知循环队列存储在一维数组A[0..n-1]中,且队列非空时front和rear分别指向队头元素和队尾元素。若初始时队列为空,且要求第1个进入队列的元素存储在A[0]处,则初始时front和rear的值分别是A.0,0B.0,n-1C.n-1,0D.n-1,n-14.若一棵完全二叉树有768个结点,则该二叉树中叶结点的个数是A.257B.258C.384D.3855.若一棵二叉树的前序遍历序列和后序遍历序列分别为1,2,3,4和4,3,2,1,则该二叉树的中序遍历序列不会是A.1,2,3,4B.2,3,4,1C.3,2,4,1D.4,3,2,16.已知一棵有2011个结点的树,其叶结点个数为116,该树对应的二叉树中无右孩子的结点个数是A.115B.116C.1895D.18967.对于下列关键字序列,不可能构成某二叉排序树中一条查找路径的序列是
本文标题:《数据结构》历年考研真题及解答
链接地址:https://www.777doc.com/doc-7381045 .html