栈元素的进出原则 顺序查找n个元素的顺序表,当使用监视哨时,若查找失败,则比较关键字的次数为?
顺序查找n个元素的顺序表,当使用监视哨时,若查找失败,则比较关键字的次数为?
所有n个元素都需要比较一次,但没有一个成功。最后,哨兵还需要比较一次,哪个比较成功。总共进行了N 1比较。示例:有五个元素:1、2、3、4、5。你要找的元素是8。那么8是哨兵。顺序如下:8、1、2、3、4、5。从5开始,你需要比较6次。比较是成功的。sentinel的下标是0,因此返回值是0。
在哈希表中查找成功和不成功时的平均查找长度如何计算?
我不知道你所说的平均搜索长度是什么意思。一般来说,哈希表会在考试中测试,因为其他的比较简单。
对于具有N个数据元素的查找表,成功查找的平均长度为ASL=∑Pici(I=1,2,3,…),N)。其中:Pi是查找表中第I个数据元素的概率,CI是找到第I个数据元素时进行比较的次数。
众所周知,要散列的线性表是(38、25、74、63、52、48),散列函数是h(k)=kmod7。如果使用线性检测的开放地址方法来处理冲突,则平均查找长度为:
ASL=p1c1,P2C2,p3c3…
ASL=1/N(C1,C2,C3…]…
其中C是每个数字的查询数
根据h(k)=kmod7,
38----1
25----1
74----2
63----1
52----4
48----3
所以ASL=1/6(1 1 4 3)=2
栈元素的进出原则 说明不成功查找元素45需要 折半查找查找失败的比较次数
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。