ImageVerifierCode 换一换
格式:DOCX , 页数:15 ,大小:201.11KB ,
资源ID:4331777      下载积分:12 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/4331777.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(数据结构c语言版课后习题答案完整版资料精修订.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

数据结构c语言版课后习题答案完整版资料精修订.docx

1、数据结构c语言版课后习题答案完整版资料精修订 SANY标准化小组 #QS8QHH-HHGX8Q8-GNHHJ8-HHMHGN#数据结构c语言版课后习题答案完整版资料第1章 绪论5选择题:CCBDCA6试分析下面各程序段的时间复杂度。(1)O(1)(2)O(m*n)(3)O(n2)(4)O(log3n)(5)因为x+共执行了n-1+n-2+1= n(n-1)/2,所以执行时间为O(n2)(6)O()第2章 线性表1选择题babadbcabdcddac2算法设计题(6)设计一个算法,通过一趟遍历在单链表中确定值最大的结点。ElemType Max (LinkList L ) if(L-next=N

2、ULL) return NULL; pmax=L-next; 法设计题(2)回文是指正读反读均相同的字符序列,如“abba”和“abdba”均是回文,但“good”不是回文。试写一个算法判定给定的字符向量是否为回文。(提示:将一半字符入栈)根据提示,算法可设计为:合应用题(1)已知模式串t=abcaabbabcab写出用KMP法求得的每个字符对应的next和nextval函数值。模式串t的next和nextval值如下:j1 2 3 4 5 6 7 8 9 10 11 12 t串a b c a a b b a b c a bnextj0 1 1 1 2 2 3 1 2 3 4 5nextval

3、j0 1 1 0 2 1 3 0 1 1 0 5(3)数组A中,每个元素Ai,j的长度均为32个二进位,行下标从-1到9,列下标从1到11,从首地址S开始连续存放主存储器中,主存储器字长为16位。求: 存放该数组所需多少单元 存放数组第4列所有元素至少需多少单元 数组按行存放时,元素A7,4的起始地址是多少 数组按列存放时,元素A4,7的起始地址是多少每个元素32个二进制位,主存字长16位,故每个元素占2个字长,行下标可平移至1到11。(1)242 (2)22 (3)s+182 (4)s+142(4)请将香蕉banana用工具 H( )Head( ),T( )Tail( )从L中取出。L=(a

4、pple,(orange,(strawberry,(banana),peach),pear)H(H(T(H(T(H(T(L)(5)写一个算法统计在输入字符串中各个不同字符出现的频度并将结果存入文件(字符串中的合法字符为A-Z这26个字母和0-9这10个数字)。void Count()/统计输入字符串中数字字符和字母字符的个数。int i,num36;char ch;for(i0;i36;i+)numi;/ 初始化while(chgetchar()!=#) /#表示输入字符串结束。if(0=ch=9)i=ch48;numi+; / 数字字符 elseif(A=ch=Z)i=ch-65+10;nu

5、mi+;/ 字母字符for(i=0;i10;i+) / 输出数字字符的个数printf(“数字d的个数dn”,i,numi);for(i10;ilchild=NULL&T-rchild=NULL) return 1; /判断该结点是否是叶子结点(左孩子右孩子都为空),若是则返回1 else return LeafNodeCount(T-lchild)+LeafNodeCount(T-rchild);(3)交换二叉树每个结点的左孩子和右孩子。void ChangeLR(BiTree &T) BiTree temp; if(T-lchild=NULL&T-rchild=NULL) return;

6、else temp = T-lchild; T-lchild = T-rchild; T-rchild = temp; ChangeLR(T-lchild); ChangeLR(T-rchild);第6章图1选择题CBBBCBABAADCCDDB2应用题(1)已知如图所示的有向图,请给出: 每个顶点的入度和出度; 邻接矩阵; 邻接表; 逆邻接表。 (2)已知如图所示的无向网,请给出: 邻接矩阵; 邻接表; 最小生成树图 无向网 ab4c3ba4c5d5e9ca3b5d5h5db5c5e7f6g5h4eb9d7f3fd6e3g2gd5f2h6hc5d4g6(3)已知图的邻接矩阵如所示。试分别画出

7、自顶点1出发进行遍历所得的深度优先生成树和广度优先生成树。(4)有向网如图所示,试用迪杰斯特拉算法求出从顶点a到其他各顶点间的最短路径,完成表。 D终点i=1i=2i=3i=4i=5i=6b15(a,b)15(a,b)15(a,b)15(a,b)15(a,b)15(a,b)c2(a,c)d12(a,d)12(a,d)11(a,c,f,d)11(a,c,f,d)e10(a,c,e)10(a,c,e)f6(a,c,f)g16(a,c,f,g)16(a,c,f,g)14(a,c,f,d,g)S终点集a,ca,c,fa,c,f,ea,c,f,e,da,c,f,e,d,ga,c,f,e,d,g,b第7章

8、 查找1选择题CDCABCCCDCBCADA2应用题(1)假定对有序表:(3,4,5,7,24,30,42,54,63,72,87,95)进行折半查找,试回答下列问题: 画出描述折半查找过程的判定树; 若查找元素54,需依次与哪些元素比较 若查找元素90,需依次与哪些元素比较 假定每个元素的查找概率相等,求查找成功时的平均查找长度。先画出判定树如下(注:mid=(1+12)/2=6):305 633 7 42 87 4 24 54 72 95查找元素54,需依次与30, 63, 42, 54 元素比较;查找元素90,需依次与30, 63,87, 95元素比较;求ASL之前,需要统计每个元素的查

9、找次数。判定树的前3层共查找12243=17次;但最后一层未满,不能用84,只能用54=20次,所以ASL1/12(1720)37/12(2)在一棵空的二叉排序树中依次插入关键字序列为12,7,17,11,16,2,13,9,21,4,请画出所得到的二叉排序树。 127 17 2 11 16 21 4 9 13验算方法: 用中序遍历应得到排序结果: 2,4,7,9,11,12,13,16,17,21(5)设哈希表的地址范围为017,哈希函数为:H(key)=key%16。用线性探测法处理冲突,输入关键字序列:(10,24,32,17,31,30,46,47,40,63,49),构造哈希表,试回

10、答下列问题: 画出哈希表的示意图; 若查找关键字63,需要依次与哪些关键字进行比较 若查找关键字60,需要依次与哪些关键字比较 假定每个关键字的查找概率相等,求查找成功时的平均查找长度。画表如下:012345678910111213141516173217634924401030314647查找63,首先要与H(63)=63%16=15号单元内容比较,即63 vs 31 ,no;然后顺移,与46,47,32,17,63相比,一共比较了6次!查找60,首先要与H(60)=60%16=12号单元内容比较,但因为12号单元为空(应当有空标记),所以应当只比较这一次即可。对于黑色数据元素,各比较1次;

11、共6次;对红色元素则各不相同,要统计移位的位数。“63”需要6次,“49”需要3次,“40”需要2次,“46”需要3次,“47”需要3次,所以ASL=1/11(6233+6)23/11(6)设有一组关键字(9,01,23,14,55,20,84,27),采用哈希函数:H(key)=key %7 ,表长为10,用开放地址法的二次探测法处理冲突。要求:对该关键字序列构造哈希表,并计算查找成功的平均查找长度。散列地址0123456789关键字140192384275520比较次数1112 3 412平均查找长度:ASLsucc=(1+1+1+2+3+4+1+2)/8=15/8以关键字27为例:H(2

12、7)=27%7=6(冲突) H1=(6+1)%10=7(冲突) H2=(6+22)%10=0(冲突) H3=(6+33)%10=5 所以比较了4次。第8章 排序1选择题CDBDCBCDBCBCCCA2应用题(1)设待排序的关键字序列为12,2,16,30,28,10,16*,20,6,18,试分别写出使用以下排序方法,每趟排序结束后关键字序列的状态。 直接插入排序 折半插入排序 希尔排序(增量选取5,3,1) 冒泡排序 快速排序 简单选择排序 堆排序 二路归并排序直接插入排序2 12 16 30 28 10 16* 20 6 18 2 12 16 30 28 10 16* 20 6 18 2

13、12 16 30 28 10 16* 20 6 18 2 12 16 28 30 10 16* 20 6 18 2 10 12 16 28 30 16* 20 6 18 2 10 12 16 16* 28 30 20 6 18 2 10 12 16 16* 20 28 30 6 18 2 6 10 12 16 16* 20 28 30 18 2 6 10 12 16 16* 18 20 28 30 折半插入排序 排序过程同 希尔排序(增量选取5,3,1)10 2 16 6 18 12 16* 20 30 28 (增量选取5)6 2 12 10 18 16 16* 20 30 28 (增量选取3

14、)2 6 10 12 16 16* 18 20 28 30 (增量选取1) 冒泡排序2 12 16 28 10 16* 20 6 18 30 2 12 16 10 16* 20 6 18 28 30 2 12 10 16 16* 6 18 20 28 30 2 10 12 16 6 16* 18 20 28 30 2 10 12 6 16 16* 18 20 28 30 2 10 6 12 16 16* 18 20 28 30 2 6 10 12 16 16* 18 20 28 302 6 10 12 16 16* 18 20 28 30 快速排序12 6 2 10 12 28 30 16*

15、20 16 18 6 2 6 10 12 28 30 16* 20 16 18 28 2 6 10 12 18 16 16* 20 28 30 18 2 6 10 12 16* 16 18 20 28 30 16* 2 6 10 12 16* 16 18 20 28 30左子序列递归深度为1,右子序列递归深度为3 简单选择排序2 12 16 30 28 10 16* 20 6 18 2 6 16 30 28 10 16* 20 12 18 2 6 10 30 28 16 16* 20 12 18 2 6 10 12 28 16 16* 20 30 18 2 6 10 12 16 28 16*

16、20 30 18 2 6 10 12 16 16* 28 20 30 18 2 6 10 12 16 16* 18 20 30 28 2 6 10 12 16 16* 18 20 28 30 2 6 10 12 16 16* 18 20 28 30 二路归并排序2 12 16 30 10 28 16 * 20 6 18 2 12 16 30 10 16* 20 28 6 18 2 10 12 16 16* 20 28 30 6 18 2 6 10 12 16 16* 18 20 28 30 堆排序第一步,形成初始大根堆(详细过程略),第二步做堆排序。初始排序 不是大根堆 形成初始大根堆交换1与

17、10对象 从1到9重新形成堆交换1与9对象 从1到8重新形成堆交换1与8对象 从1到7重新形成堆交换1与7对象 从1到6重新形成堆交换1与6对象 从1到5重新形成堆交换1与5对象 从1到4重新形成堆交换1与4对象 从1到3重新形成堆交换1与3对象 从1到2重新形成堆交换1与2对象 得到结果3算法设计题(1)试以单链表为存储结构,实现简单选择排序算法。void LinkedListSelectSort(LinkedList head)/本算法一趟找出一个关键字最小的结点,其数据和当前结点进行交换;若要交换指针,则须记下/当前结点和最小结点的前驱指针p=head-next; while(p!=null) q=p-next; r=p; /设r是指向关键字最小的结点的指针 while (q!=null) if(q-datadata) r=q; q:=q-next; if(r!=p) r-datap-data; p=p-next;

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1