一、一般线性表的顺序查找
ASL成功 = (n+1)/2
ASL失败 = (n+1)
二、有序线性表的顺序查找
ASL成功 = (n+1)/2
ASL失败 = n/(n+1) + n/2
三、二分查找
二分查找的ASL成功和ASL失败通过画出对应查找序列的判定树,进而进行计算。
四、索引查找
ASL = I块内 + I块间
其中块间可以使用二分查找。
(1)ASL = (b+1)/2 + (s+1)/2 块内和块间均使用顺序查找,由于n = s*b,可以通过构建方程,得到当s = n^(1/2)。
ASL最小为n^(1/2)+1
本文深入探讨了数据结构中各种查找算法的平均查找长度(ASL),包括一般线性表的顺序查找、有序线性表的顺序查找、二分查找及索引查找,并详细分析了不同查找方式下ASL的计算方法。

1万+

被折叠的 条评论
为什么被折叠?



