数据结构(C语言版)考研真题(A卷)_第1页
数据结构(C语言版)考研真题(A卷)_第2页
数据结构(C语言版)考研真题(A卷)_第3页
数据结构(C语言版)考研真题(A卷)_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、姓名:报考专业:准考证号码:密封线内不要写题二O 一四年招收硕士研究生入学考试试题考试科目代码及科目名称:856 数据结构(C语言版)答题内容写在答题纸上,写在试卷或草稿纸上一律无效考完后试题随答题纸交回。考试时间3小时,总分值 150 分。一、选择题(10小题,每题2分,共20分)1. 算法分析的主要内容是( )。A)正确性 B)可读性和稳定性 C)简单性 D)空间复杂性和时间复杂性2. 线性表若采用链式存储结构时,要求内存中可用存储单元的地址( )。A)必须是连续的 B)部分地址必须是连续的C)一定是不连续的 D)连续或不连续都可以3. 设有6个元素按1、2、3、4、5、6的顺序进栈,下列

2、不合法的出栈序列是( )。A)234165 B)324651 C)431256 D)5463214. 设有二维数组A1.12,1.10,其每个元素占4个字节,数据按行优先顺序存储,第一个元素的存储地址为100,那么元素A5,5的存储地址为( )。A)76 B)176 C)276 D)3765. 已知一棵二叉树的先序序列为ABDGCFK,中序序列为DGBAFCK,则后序序列为( )。A)ACFKDBG B)GDBFKCA C)KCFAGDB D)ABCDFKG6. 在二叉树结点的先序,中序和后序序列中,所有叶子结点的先后顺序( )。A)都不相同 B)完全相同C)先序和中序相同,而与后序不同 D)

3、中序和后序相同,而与先序不同7. 图的深度优先遍历类似于二叉树的( )。A)先序遍历 B)中序遍历 C)后序遍历 D)层次遍历8. 下面( )算法适合构造一个稠密图G的最小生成树。A) Prim算法 B)Kruskal算法 C)Floyd算法 D)Dijkstra算法9. 对关键码46,79,56,38,40,84采用堆排序,则初始化堆(小堆)后最后一个元素是( )。A)84 B)46 C)56 D)3810.在Hash函数H(k)=k MOD m中,一般来讲m应取( )。A)奇数 B)偶数 C)素数 D)充分大的数二、填空题(10小题,每题2分,共20分)1. 在单向链表某P结点之后插入S结

4、点的操作是( )。2. 线性表用数组表示,假定删除表中任一元素的概率相同,则删除一个元素平均需要移动元素的个数是( )。3. 一个栈的输入序列是:1,2,3则不可能的栈输出序列是( )。4. 一棵二叉树高度为h,所有结点的度或为0,或为2,则该二叉树最少有( )结点。5. 在完全二叉树中,编号为i和j的两个结点处于同一层的条件是( )。6. 若无向图G=(V,E),其中V=a,b,c,d,e E=(a,b),(a,d),(a,c),(d,c),(b,e),现采用图的( )遍历方法从顶点a开始遍历图,得到的序列为abecd。7. 求最短路径的Dijkstra算法的时间复杂度为( )。8. 假定有

5、k个关键字互为同义词,若用线性探测再散列法把这k个关键字存入散列表中,至少要进行( )次探测。9. 设在已排序的线性表中共有元素n个,若用二分法查找表中的元素。若查找成功,至少要比较( )次10.对一组记录(54,38,96,23,15,2,60,45,83)进行直接插入排序,当把第7个记录60插入到有序表时,为寻找插入位置需比较( )次。三、综合应用题(7小题,每题10分,共70分)1. 已知A1.N是一棵顺序存储的完全二叉树,如何求出Ai和Aj的最近的共同祖先?2. 请给出一棵哈夫曼树中分支数B与叶子节点数n0所满足关系式,并证明你的结论。3. 下面的排序算法的思想是:第一趟比较将最小的元

6、素放在r0中,最大的元素放在rn-1中,第二趟比较将次小的放在r1中,将次大的放在rn-2中,,依次下去,直到待排序列为递增序。(注:<-> 代表两个变量的数据交换)。void sort(SqList &r,int n) i=0;while( (1) ) min=max=i; for (j=i+1; (2) ;+j) if( (3) ) min=j; else if(rj.key>rmax.key) max=j; if( (4) ) rmin<->ri; if(max!=n-i-1) if( (5) ) rmin<->rn-i-1; else

7、rmax<->rn-i-1; i+;/sort4. 如下图所示的AOE网(1)写出所有的拓扑序列(2)求各顶点代表的事件的最早发生时间和最迟发生时间(3)求各条弧代表的活动的最早开始时间和最迟开始时间(4)给出其关键路径5. 设哈希函数H(K)=3 K mod 11,哈希地址空间为010,对关键字序列(32,13,49,24,38,21,4,10),按下述两种解决冲突的方法构造哈希表,并分别求出等概率下查找成功时和查找失败时的平均查找长度ASLsucc和ASLunsucc。(1)线性探测法 (2)链地址法6. 全国有10000人参加竞赛,只录取成绩优异的前10名,并将他们从高分到低

8、分输出。而对落选的其他考生,不需排出名次,问此种情况下,用何种排序方法速度最快?为什么?7. 假定对有序表(3,4,5,17,24,35,40,54,58,72,80,123)进行折半查找,试回答问题:(1)画出描述折半查找过程的判定树;(2)若查找元素54,需依次与那些元素比较?(3)若查找元素20,需依次与那些元素比较?(4)分别求等概率情况下查找成功和不成功时的平均查找长度。四、算法设计与编程(4小题,每题10分,共40分)1. 设有一头指针为L的带有表头结点的非循环双向链表,其每个结点中除有pred(前驱指针),data(数据)和next(后继指针)域外,还有一个访问频度域freq。在

9、链表被启用前,其值均初始化为零。每当在链表中进行一次Locate(L,x)运算时,令元素值为x的结点中freq域的值增1,并使此链表中结点保持按访问频度非增(递减)的顺序排列,同时最近访问的结点排在频度相同的结点的最后,以便使频繁访问的结点总是靠近表头。试编写符合上述要求的Locate(L,x)运算的算法,该运算为函数过程,返回找到结点的地址,类型为指针型。2. 已知二叉树用下面的顺序存储结构,写出先序遍历该二叉树的算法。123456789 data ABCDEFGHI Lc240008000 Rc3560790003. 编写在后序线索二叉树中求任一结点直接前驱的算法(结点结构包括数据域data、左孩子域

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论