无序顺序查找:
成功:ASL =(n+1)/2 (1+2+...+n)/n
失败:ASL = n+1 有个哨兵
有序顺序查找:
成功:ASL =(n+1)/2
!失败:ASL =n/2 + n/(n+1)= (1+2+...+n+n)/(n+1)=sum(每个块块所在层数,一共n+1个块块) /(n+1) 一共n+1个失败的区间
折半查找:类似二叉排序树
成功(圆结点):ASL=sum(本层个数✖️层数)/总结点数 ~ (1✖️1+...+2^(h-1)✖️h)/n ~ log2(n+1)-1
失败(NULL变成方结点):ASL=sum(每行方块块个数✖️到方块块的棒棒个数)/所有方块块的个数
分块查找:按关键码值进行块间排序
(顺+顺)成功:ASL=(b+1)/2+(s+1)/2
(折半+顺)成功:ASL=log2(b+1)向上取整+(s+1)/2
哈希表:计算机考研~数据结构,查找一章最重要的散列表!!!必会!_哔哩哔哩_bilibili
成功:ASL=sum(比较次数)/给了几个数
失败:ASL = sum(到空格有几个格子)/模数
二叉排序树:二叉排序树2_哔哩哔哩_bilibili
成功:ASL=sum(本层个数✖️层数)/总结点数
失败(NULL变成方结点):ASL=sum(每行方块块个数✖️到方块块的棒棒个数)/所有方块块的个数