ASL平均搜索長度計算

ASL(Average Search Length),即平均查找長度,在查找運算中,由於所費時間在關鍵字的比較上,所以把平均需要和待查找值比較的關鍵字次數稱爲平均查找長度。

它的定義是這樣的:

在這裏插入圖片描述

其中n爲查找表中元素個數,Pi爲查找第i個元素的概率,通常假設每個元素查找概率相同,Pi=1/n,Ci是找到第i個元素的比較次數。

當然,有查找成功,就有查找不成功,即要查找元素不在查找表中。針對不同查找方式的查找成功與不成功,我接下來會說,這也是一我一開始有點亂的地方。

一個算法的ASL越大,說明時間性能差,反之,時間性能好,這也是顯而易見的。

在順序查找(Sequence Search)表中,**查找方式爲從頭掃到尾,找到待查找元素即查找成功,若到尾部沒有找到,說明查找失敗。**所以說,Ci(第i個元素的比較次數)在於這個元素在查找表中的位置,如第0號元素就需要比較一次,第一號元素比較2次…第n號元素要比較n+1次。所以Ci=i;所以
    
在這裏插入圖片描述
可以看出,順序查找方法查找成功的平均 比較次數約爲表長的一半。當待查找元素不在查找表中時,也就是掃描整個表都沒有找到,即比較了n次,查找失敗
在這裏插入圖片描述

轉載的某博主的文章,鏈接如下:
https://www.cnblogs.com/ygsworld/p/10238729.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章