千变万化-江西大学生门户's Archiver

admin 发表于 2006-6-15 18:42

东南大学1994年研究生入学考试:数据结构试题

试题编号:451      试题名称:数据结构      一、回答下列问题(共32分)   1、最近最少使用(Least-Recently-Used)页替换是虚拟存储系统中常用的策略,试说明如何利用一页链接表时刻跟踪最近最少使用页?(8分)   2、已知无向图G,V(G)={1,2,3,4},E(G)={(1,2),(1,3),(2,3),(2,4),(3,4)},试画出G的邻接多表(AdjacencyMultilists),并说明,若已知点i,如何根据邻接多表找到与i相邻的点j?(8分)   3、欲求前k个最大元素,用什么分类(sorting)方法好?为什么?什么是稳定分类?分别指出下列算法是否稳定分类算法,或易于改成稳定分类算法?   (a)插入分类(b)快速分类(c)合并分类(d)堆(heap)分类(e)基数分类(radixsort)(8分)   4、构造最佳二叉检索树的前提条件是什么?在动态情况下,一般AVL树的查询性能不如完全二叉检索树的,为什么人们却采用AVL树呢?(8分)   二、下列算法对一n位二进制数加1,假设无溢出,该算法的最坏时间复杂度是什么?并分析它的平均时间复杂性。(15分)   typeNum=array[1..n]of[0..1];   procedureInc(varA:Num);;   varj:integer;   begini:=n;;   whileA[i]=1do   A[i]:=0;i:=i-1;   end;   A[i]:=1;   endInc;   三、给定n*m矩阵A[a..b,c..d],并设A[i,j]<=A[i,j 1](a<=i<=b,c<=j<=d-1)和A[i,j]<=A[i 1,j](a<=i<=b-1,c<=j<=d),设计一算法以比O(n*m)小的时间复杂度判定值x是否在A中。(17分)   四、设图G有n个点,利用从某个源点到其余各点最短路径算法思想,设计一产生G的最小生成树的算法。(18分)   五、字符序列的子序列由删除该序列任意位置的任意个元素而得。序列x和y的最长公共子序列记为Lcs(x,y),是x和y的公共子序列,且长度最大.例如,adcbcb是x=abdcbcbb和y=adacbcb的最长公共子序列。设x长度为n,y长度为m,设计一算法计算x和y的最长公共子序列的长度,尽可能改进你的算法,使它的时间复杂性为O(n*m)。(18分)

页: [1]
※ 本 站 声 明※

点击注册 千变万化是由昌大师生建立的非官方南昌大学论坛,言论纯属发表者个人意见,与本论坛立场无关
如果?容有涉及侵权,请马上联络
管理员 有事请留言

sitemap

Powered by Discuz! Archiver 6.1.0  © 2001-2007 Comsenz Inc.