Free考研资料 - 免费考研论坛

 找回密码
 注册

02、03年深圳大学信号与信息处理考研试卷

[复制链接]
lvcollin 发表于 08-9-5 14:59:12 | 显示全部楼层 |阅读模式
2002年深圳大学硕士研究生入学考试专业课试卷
(答题必须写在答题纸上,写在本试题无效)
专业:信号与信息处理
考试科目:数据结构
一、(10%
void getnext(char pat[],int next[]),求模式parnext值(KMP算法)








二、(10%
构造+-*/%huffman编码,它们的权分别是43271596




三、(20%
设树用“孩子兄弟链接法”存储,结点结构如下:
struct treenode {int data ;struct treenode *child,*brother;};
1、
写函数void treecopy (struct treenode *root,struct treenode **pt);复制根指针为root的树,复制出的树的跟为*pr
2、
写函数void leveltraverse(struct treenode *root),逐层(每层按子树顺序)周游指针为root的树。














四、(20%
用两种排序算法对整数序列583939438107024735227进行升序排序,第一趟的结果分别为:
395839410382470527327
277370585210324393894
1、
它们分别是哪两种排序算法?
2、
它们的平均时间复杂度及空间复杂度各是多少?是否稳定?







五、(20%
采用拉链法解决冲突的哈希表说明如下:
Struct node {unsigned int data; Struct node *next;};
#define LEN 12
Struct node *hashrab[LEN];
1、
用除留余数法写哈希函数 int hash(unsigned int key).
2、
Struct node *lookup(unsigned int key),在表中查找key,返回其结点指针;若未找到,先将其插入表中,再返回其结点指针。
3、
Hashtab
的裂填因子是否为已在表中的整数除以LEN?为什么?








六、(20%
现有有向图G={VE},其中V={012345678}E={<0,2>,<0,7>,<1,2>,<1,3>,<1,4>,<2,3>,<2,8>,<3,5>,<3,6>,<4,5>,<7,8>,<8,6>}.
1、
画出该图并写出邻接矩阵。
2、
void roposort(int adjmat[9][9],int result [] ),根据邻接矩阵adjmat对该图拓扑排序,结果存于result中。






2003年深圳大学硕士研究生入学考试专业课试卷
(答题必须写在答题纸上,写在本试题无效)
专业:信号与信息处理
考试科目:数据结构
一、判断下列陈述是否正确(每题3分)
1、
正确性是算法的特征之一。
2、
删除单链表中的非头结点,必须知道其前一结点的地址。
3、
二叉树是度不大于2的树。
4、
非空树所对应的二叉树的根没有右子树。
5、
在有n2度结点、n+1个叶结点的二叉树中没有度为1的结点。
6、
用邻接矩阵存储图时所需的存储空间与图的边数成正比。
7、
n个结点的强连通有向图至少有n(n-1)条边。
8、
为了较好地对基本有序的待排序序列进行排序,应采用直接插入排序法。
9、
二路归并排序是稳定的排序方法。
10、对n个关键码排序,快速排序法平均时间复杂度为O(nlog2n).
11mB-树具有k个后件的非叶子结点含有k个键值。
12、散列表的平均查找长度与负载因子有关。

二、填空(每题8分)
1、
现有ABCDE进、出栈,若进的顺序为ABCDE。可能出的ABCDE排列有(

)种,不可能的ABCDE排列有(

)种。
2、
二维数组A[10][20]按行优先顺序存储,每个元素占两字节。若第一个元素的存储地址为100,则A[5][10] 的存储地址为(




3、
m阶对称方阵A的下三角元素(含主对角线)逐行逐列依次存于一维数组B0下标开始)中,则B       )存放着aij i<j)。
4、
用希尔排序法对序列412956886791839463进行排序,第一趟(增量取4)排序结果为(                                       
5、
KMP算法进行模式匹配,aabbabbanext序列为(



6、
二叉树的中序和后序周游结果分别为54162735467321。其先序周游结果为(                          

三、(每题8分)
1、在双链表的p指针所指的结点前插入值为x的结点,写出C语句序列。
结点结构为struct dnode {int data ;struct dnode *pre ,*next;}.


2C函数如下:
struct dnode (int data ;struct dnode *lc ,*rc;);
void what (struct dnode *r)
{
struct dnode *q;
if (r==NULL)
return;

q=r->k; r->lc->rc; r->rc=q;
what (r->lc) ;
what (r->rc) ;

}
若二叉树BT=(D,R),D={a,b,c,d,e},R={<aLb>,<bLc,<aRd>,<dRe>}采用llink-rlink法存储,结点结构为bnode,最初将a的指针传给what,画出每次调用what前的结果,<xLy>表示yx的左子树的根,<xRy>表示yx的右子树的根。



3a,b,c,d,e的权值分别为227441017,写出它们的huffman编码。



4、往一棵空的AVL树中依次插入关键码3530252015510,画出每个关键码插入完成后的AVL树。



5、哈希表采用线性探测再散列解决冲突,表长为20,哈希函数要除留余数法,除数应选几?如果选了20,从空表开始,依次插入关键码183819805,画出每个每个关键码插入完成后的哈希表。




6、网G=VE),V=1234567),E={<1,2,6>,<1,3,10>,<2,4,12>,<3,4,8>,<3,6,26>,<4,5,4>,<4,6,6>,<5,7,16>,<6,7,4>},<vi,vj,w>表示活动<vi,vj>的权为w。写出所有的关键活动。




四、(18分)
#define N 8
/*
顶点个数*/
struct res {int len , int pre}; /*结果数组元素类型*/
1、
利用求最短路径的Dijkstra算法写函数
void Dij_sp(int Adj[][N], struct res p[], int sv);
/* Adj :邻接矩阵,sv:出发顶点,p:所得结果*/
2、
写反向(从终点ev到起点sv)输出一条最短路径及其长度的函数
Void
point (struct res p[], int sv, int ev);

/*p:由Dij_sp 算出的从sv出发到其余各顶点的最短路径结果*/
yueshen22 发表于 08-9-6 16:30:54 | 显示全部楼层
有些乱
andyzheung 发表于 08-9-7 16:14:07 | 显示全部楼层
好资料,大家一起享用。。。
andyzheung 发表于 08-9-7 16:14:38 | 显示全部楼层
好资料,大家一起享用。。。
andyzheung 发表于 08-9-7 16:15:00 | 显示全部楼层
好资料,大家一起享用。。。
andyzheung 发表于 08-9-7 16:15:23 | 显示全部楼层
好资料,大家一起享用。。。
andyzheung 发表于 08-9-7 16:15:50 | 显示全部楼层
好资料,大家一起享用。。。
andyzheung 发表于 08-9-7 16:16:14 | 显示全部楼层
好资料,大家一起享用。。。
shaoxx1234 发表于 10-3-24 15:44:55 | 显示全部楼层
多谢楼主分享了饿
您需要登录后才可以回帖 登录 | 注册

本版积分规则

联系我们|Free考研资料 ( 苏ICP备05011575号 )

GMT+8, 24-11-30 11:08 , Processed in 0.120381 second(s), 12 queries , Gzip On, Xcache On.

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表