数据结构试题(全部答案)
好的试题是你考试好的跳板
《数据结构》试题答案(闭卷) A卷
(电信系本科2008级 2010年1月)
姓名 班级
一、简答题 (每题4分,共40分)
1.已知一个线性表有n(n<=30)个元素,其中每个元素的数据占8个字节。假设一个指针的大小为4个字节。如果采用有30个元素的定长数组存储,那么当数组中有效元素个数n满足什么条件时,数组的存储效率比不带头结点的单链表更高?
答:8*30<(8+4)*n n>20
2.给定12个字母,假设他们的权值都相等。采用Huffman编码,则每个字母的平均编码长度是多少?
答:按Huffman树建立规则,应有4个3Bit码和8个4Bit码,则平均码长为(4*3+8*4)/12=3.67
3.利用栈计算表达式((A-B)-C)-(D+(E-F)) 的值,操作数栈和运算符栈的深度最小各是多少?
答:5项 4项
4. 在一棵有n个结点的树中,只存在度为m和度为0的结点,给出叶子结点的数目。
设: n=nm+n0 , 关系个数n-1=m* nm 解此方程组n0=n-(n-1)/m
5. 找出满足在中序遍历和后序遍历时,所得到的结点访问序列相同的二叉树。 答:该二叉树为只有一个结点的二叉树或右单支树
1
好的试题是你考试好的跳板
6.欲将无序序列(23, 78, 12, 35, 69, 95, 11, 09, 35*, 48, 99, 26)中的关键字由大到小重新排列,请写出快速排序第一趟排序的结果序列。 原始序列
7.设模式串为“大学生中华华中科技大学大学生活”,求该模式串的next函数,next函数值与模式串向右滑动距离的关系是什么? next =0 1 1 1 1 1 1 1 1 1 2 3 2 3 4
8.设有 1000 个结点(有序),用二分法查找时,最大比较次数是多少?
答:1000个有序节点采用二分查找时的查找判定树深度为10,故最大比较次数为10
9.设有150个记录要存储到散列表中,并利用线性探查法解决冲突,要求找到所需记录的平均比较次数ASL不超过2次。试问散列表需要设计多大? (ASL = ( 1+1/ (1- ) )/2;装载因子 =已装入散列表的记录数/散列表的长度 )。 答:已知要存储的记录数为n=150,查找成功的平均查找长度为ASLsucc ≤2,则有:ASLsucc =1/2(1+1/(1- ))≤2 解得 ≤2/3 ,又有: =n/m=150/m 两式联立得:150/m≤2/3,解得:m≥225. 所以散列表需要设计225个单元。
10. 若从二叉树的任一结点出发到根的路径上所经过的结点序列按其关键字有序,则该二叉树是( )?
A、二叉排序树 B、哈夫曼树 C、堆 D、静态最优查找树 答:C(堆)
二、综合题(共30分)
1.说明下面算法的功能是什么? (6分)
2
好的试题是你考试好的跳板
int unknown(BiTree *r){
{//指针r是二叉树的根指针
if(r==NULL) return 0;
else if(unknown(r->leftChild)>=unknown(r->rightChild))
return 1+unknown(r->leftChild);
else return 1+unknown(r->rightChild); }
答案:求二叉树的深度
2.写出递归过程调用p(3)的运行结果,并分析该递归过程的时间复杂度。 (8分) void p(int w) {
if w>0 { p(w-1);
print(w); //输出W p(w-1);
} }
答案: 依据栈的变化,可以得出输出结果为:1 2 1 3 1 2 1
时间复杂度为o(2w)
3.若一序列(33,44,24,53,68,43,76,85,45,109,03,17)的查找概率分别是(0.01,0.15,0.03,0.05,0.18,0.04,0.15,0.05,0.05,0.21,0.04,0.04),画出最优查找的哈希表(哈希函数为:Hash(key)=key mod 11,采用链地址法进行冲突处理),并求平均查找长度ASL (8分)
答: 最优查找的哈希表如下图所示:
3
好的试题是你考试好的跳板
ASL=1*(0.15+0.05+0.18+0.04+0.04+0.05+0.21)+2*(0.01+0.03+0.15)+3*0.04 =0.72+0.38+0.12 =1.22
4.下图给出了一图的邻接矩阵,回答以下问题: (8分)
A B C D E F A
0 0 1 1 0 0 B 0 0 0 0 1 1 C 1 0 0 1 0 0
D 1 0 1 0 0 0 E 0 1 0 0 0 1 F 0 1 0 0 1 0
1) 画出该图的逻辑图;
2) 从顶点B开始,分别写出深度优先和广度优先搜索的任一遍历序列; 3) 该图是否存在最小生成树?说明理由。
答: 1
2. 深度优先序列 BEFDAC, 广度优先序列BFEDAC
3. 此图是非连通图,没有最小生成树,
4
好的试题是你考试好的跳板
三、 算法设计题(任选3题,每题10分,共30分)
1.一个长度为n的学生记录数组,编写一个最优算法实现数组中男生排在前,女生
排在后,并分析该算法的平均时间和空间复杂度,先给出学生记录的c语言描述。(10分)
(1) 学生记录的c语言描述如下: typedef struct student { int data; char sex } student;
struct student a[n];
(2)算法设计(仿一趟快排算法,但无需将首元素备份,交换则可)
int sort(int &a, int low, int high) { while(low<high) {
while((low<high)&&a[low].sex==’male’) low++; while((low<high)&&!a[high] .sex==’male’)high--; if(low<high) {
temp=a[low]; //前面是女生后面是男生的话,则需要交换位置 a[low]=a[high]; a[high] = temp ; low++; high-- } }
return low; } //sort
该算法的平均时间复杂度为O(n),因为只需利用一趟快排便可将男生和女生分开; 平均空间复杂度为O(1),因为只用到一个temp缓冲单元,与n无关。
2.已知线性单链表头指针为list,请写一算法,要求不求出链表的长度且空间复杂度为o(1) ,找出链表的倒数第k个结点。若找到这样的结点,算法返回该结点的地址,否则,返回NULL。(10分)
答案:
算法的基本思想:
5
好的试题是你考试好的跳板
设置一个指针变量p(初始时指向链表的第1 个结点),然后让其后移指向链表的 第k个结点(不是倒数第k个结点);再设置另外一个指针变量 r,初始时也指向链表的第1 个结点;利用一个循环让p 与r 同步沿链表向后移动;当p 指向链表最后那个结点时,r 指 向链表的倒数第k个结点。
显然,算法的时间开销主要指针的移动上,对于
任意k(1≤k≤n),指针分别要移动k-1 次和n-k次,两个部分总计执行n-1 次, 因此,算法的总扫描次数为n次。 (2)算法:
LinkList SEARCHNODE(LinkList list,int k) {
LinkList p,r; int i; if(list!=NULL&& k>0){
p=list;
for(i=1;i<k;i++){ /* 循环结束时,p指向链表的第k个结点*/
p=p->link; if(p==NULL){
printf("链表中不存在倒数第k个结点!");return NULL; }
} //for r=list;
while(p->link!=NULL){
p=p->link; r=r->link;
} /* 循环结束时,p指向链表最后那个结点,r指向倒数 …… 此处隐藏:2893字,全部文档内容请下载后查看。喜欢就下载吧 ……
相关推荐:
- [行业范文]美好的法语句子
- [行业范文]描写露珠的句子
- [行业范文]精彩禅语句子图片
- [行业范文]关于满嘴谎言的句子
- [行业范文]关于安静的句子48句
- [行业范文]关于小河的句子
- [行业范文]描写稻田的句子
- [行业范文]思念好朋友的句子
- [行业范文]赞美雪的句子
- [行业范文]早上激励人心的句子
- [行业范文]失恋忧伤的句子
- [行业范文]努力积极向上的句子
- [行业范文]对工作心灰意冷的句子
- [行业范文]失恋让人心疼的句子
- [行业范文]描写珍惜青春的句子
- [行业范文]表达思念的句子简短
- [行业范文]关于父爱的句子范例
- [行业范文]浪漫的英语句子
- [行业范文]关于周末的句子
- [行业范文]思念牵挂的句子
- 有关感恩班会课件简短(二篇)(感恩班会
- 2025年初二下乡军训心得体会800字(15篇
- 关于新员工培训方案汇编(关于新员工培
- 精选高考生寒假学习计划书(精)(高考生
- 毕业实训报告心得体会(3篇)(实训报告心
- 银行工作感悟及心得范文怎么写(四篇)(
- 精选领导干部个人政治画像报告通用(七
- 精选超市11.11活动促销方案(精品超市品
- 2025年怎么做自我介绍汇总(5篇)(至2025
- 最新企业错峰生产方案(26篇)(山西企业
- 最新暑期三下乡社会实践调研报告范本(
- 最新幼儿园大班教育教学总结怎么写(最
- 最新教师节主持词小学(优秀9篇)(教师节
- 关于小学安全教育教学方案(推荐)(关于
- 员工信模板范文怎么写(五篇)(员工信息
- 最新保险销售离职申请书(十六篇)(最新
- 最新XX小学防校园欺凌工作方案怎么写(2
- 有关特岗教师辞职信范文(推荐)(特岗教
- 精选党的建设工作要点简短(党的建设的
- 如何写安康杯竞赛活动总结汇总(4篇)(安




