若对有n个元素的有序顺序表和无序顺序表进行顺序搜索,试就下列三种情况分别讨论两者在等搜索概
(1)搜索失败;
(2)搜索成功,且表中只有一个关键码等于给定值k的元素;
(3)搜索成功,且表中有若千个关键码等于给定值k的元素,要求一次搜索找出所有元素。
(1)搜索失败;
(2)搜索成功,且表中只有一个关键码等于给定值k的元素;
(3)搜索成功,且表中有若千个关键码等于给定值k的元素,要求一次搜索找出所有元素。
成功;否则确定下一步搜索的区间为4(i-1)+1到4i-1.然后在此区间内与第4i-2个元素作比较,若相等则搜索成功,否则继续与第4i-3或4i-1个元索进行比较,直到搜索成功。
(1)给出实现算法。
(2)试面出当表长n=16时的判定树,并推导此搜索方法的平均搜索长度(考虑搜索元素等概率和n%4=0的情况)。
(1)画出描述上述查找过程的判定树。
(2)计算等搜索概率下搜索成功的平均搜索长度。
(3)计算等搜索概率下搜索不成功的平均搜索长度。
A.5.5
B.5
C.39/8
D.19/4
已知如下所示长度为12的表:(Jan,Feb,Mar,Apr,May,June,July,Aug,Sep,Oct,Nov,Dec)
①试按表中元素的顺序依次插入一棵初始为空的二叉排序树,画出插入完成之后的二叉排序树,并求其在等概率的情况下查找成功的平均查找长度。
②若对表中元素先进行排序构成有序表,求在等概率的情况下对此有序表进行折半查找时查找成功的平均查找长度。
③按表中元素顺序构造一棵平衡二叉排序树,并求其在等概率的情况下查找成功的平均查找长度。
若对大小为N的有序顺序表进行顺序查找,当查找不成功时,平均查找长度为(59);当查找成功且表中仅有一个关键字等于欲查找的元素时,平均查找长度为(60)。
A.N
B.N+1
C.N/2
D.(N+1)/2
假定对有序表:(3,4,5,7,24,30,42,54,63,72,87,95)进行折半查找,试回答下列问题:
①画出描述折半查找过程的判定树;
②若查找元素54,需依次与哪些元素比较?
③若查找元素90,需依次与哪些元素比较?.
④假定每个元素的查找概率相等,求查找成功时的平均查找长度。