数据结构第八章习题答案
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第八章查找
1.若为大小均为n的有序的顺序表和无序的顺序表分别进行顺序查找,试在下列三种情况下分别讨论两者在等概率时的平均查找长度是否相同?
(1)查找不成功,即表中没有关键字等于给定值K的记录;
(2)查找成功,且表中只有一个关键字等于给定值K的记录;
(3)查找成功,且表中有若干个关键字等于给定值K的记录,一次查找要求找出所有记录。此时平均查找长度应考虑找到所有记录时所用的比较次数。
【解答】在已知的有序表进行顺序排序,可对顺序查找算法进行改进。
(1)不相同;
(2)相同;
(3)不相同。
2.画出对长度为10的有序表进行折半查找的判定树,并求其等概率时查找成功的平均查找长度。
【解答】
等概率时查找成功的平均查找长度=(1+2*2+3*4+4*3)/10=2.9
3.已知下列长度为7的表(50, 40, 30, 60, 55, 58, 59)。
(1)试按表中元素的顺序依次插入一棵初始为空的二叉排序树,画出插入完成后的二叉排序树,求其在等概率情况下查找成功的平均查找长度。
(2)按表中元素顺序构造一棵平衡二叉排序树,并求其在等概率情况下查找成功的平均查找长度。
【解答】
(1)
等概率情况下查找成功的平均查找长度=(1+2*2+3*2+4+5)/7=20/7
(2)
等概率情况下查找成功的平均查找长度=(1+2*2+3*4)/7=17/7
4.在地址空间为0~16的散列区中,自己构造哈希函数,对以下关键字序列构造哈希表:
(Jan,Feb,Mar,Apr,May,June,July,Aug,Sep,Oct,Nov,Dec)
(1)用线性探测开放定址法处理冲突;
(2)用链地址法处理冲突。
并分别求这两个哈希表在等概率情况下查找成功和不成功的平均查找长度。【解答】略。