《数据结构习题课》PPT课件.ppt
《《数据结构习题课》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《数据结构习题课》PPT课件.ppt(35页珍藏版)》请在三一办公上搜索。
1、数据结构习题 第 8 章,吉林大学计算机科学与技术学院谷方明,第8章作业,8-48-7,8-8,8-9,8-108-138-22,8-23,8-4,设有关键词为A、B、C和D,按照不同的输入顺序,共可能组成多少种不同的二叉查找树。请画出其中高度较小的6种。,参考答案,以A为根的BST共5种B为第2个元素:2种C为第2个元素:1种(高度为2)D为第2个元素:2种以B为根的BST共2种(高度为2)以C为根的BST共2种(高度为2)以D为根的BST共5种(类似A)一共有14种。高度为2的有6种,为3的有8种,8-7,画出对长度为10的有序表进行折半查找的判定树,并求其等概率时查找成功的平均查找长度。
2、,参考答案,ASLsucc=(1+2*2+3*4+4*3)/10=29/10ASLunsucc=(5*3+6*4)/11=39/11,8-8,对长度为12的有序表(a1,a2,a12)(其中ai a12,aixai+1(i=1,2,11)等情况发生的概率相等,则查找不成功的平均查找长度是多少?,二叉判定树如下:ASLUNSUCC En/(n+1)(3*3+4*10)/13 49/13,参考答案,8-9,假设按下述递归方法进行顺序表的查找:若表长n 10,则进行顺序查找,否则进行折半查找。试画出对表长n=50的顺序表进行上述查找时,描述该查找的判定树,并求出在等概率情况下查找成功的平均查找长度。
3、,ASL=(1+2*2+3*4+(4+5+6+7+8)*8+9*3)/50=284/50,参考答案,8-10,已知下列关键词和它们对应的散列函数值:由此构造哈希表,用线性探测法冲突,计算平均查找长度ASL。若用拉链法解决冲突情况又如何?,参考答案,线性探测法(假设散列表的长度是8,下标从0开始)查找成功ASL=(1*5+3*1+7*1)/7=15/7,拉链法(假设散列表长度是8,下标从0开始)查找成功ASL=(1*5+2*1+2*1)/7=9/7,合并拉链法(算法C),拉链法(假设散列表的长度是8,下标从0开始)查找成功ASL=(1*5+2*1+2*1)/7=9/7,8-13,已知序列(17,
4、31,13,11,20,35,25,8,4,11,24,40,27),请画出该序列的二叉查找树,并分别给出下列操作后的二叉查找树。(1)插入数据9(2)删除节点17(3)再删除节点13,参考答案,动态插入创建二叉查找树:(17,31,13,11,20,35,25,8,4,11,24,40,27),17,(17,31,13,11,20,35,25,8,4,11,24,40,27),插入数据9,删除17,再删除节点13,8-22,编写判定给定的二叉树是否是二叉查找树的算法。,提示判定二叉树是否为二叉查找树是建立在中根遍历的框架基础下,在遍历中附设一指针pre指向当前访问节点的中根直接前驱,每访问一
5、个节点便比较前驱节点pre和此节点是否有序,若遍历结束后各节点和其中根直接前驱均满足有序,则此二叉树为二叉查找树;否则,只要有一个节点不满足,那么此二叉树就不是二叉查找树。,算法BST(t.pre,flag)/*使用中根遍历和pre指针判断t是否是二叉查找树*/B1 特判 flag TRUE.IF t=NULL THEN RETURN.B2 中根遍历 BST(left(t),pre,flag).IF(!flag)THEN RETURN.IF(pre!=NULL AND data(pre)data(t)THEN(flag FALSE.RETURN.).pre t.BST(right(t),pre
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据结构习题课 数据结构 习题 PPT 课件
链接地址:https://www.31ppt.com/p-5519654.html