对N个元素的表做顺序查找时,若查找每个元素的概率相同,则平均查找长度为
时间: 2023-12-21 09:24:12 浏览: 337
在对N个元素的表做顺序查找时,若查找每个元素的概率相同,则平均查找长度ASL(Average Search Length)为:
```
ASL = (1/N) * (1 + 2 + 3 + ... + N)
```
即
```
ASL = (1/N) * N(N+1)/2
```
化简得
```
ASL = (N+1)/2
```
因此,平均查找长度为 `(N+1)/2`。
相关问题
题目中的意思是:对于n个元素的表做顺序查找时,若查找每个元素的概率相同,则平均查找长度为多少?
对于n个元素的表做顺序查找时,每个元素被查找到的概率是相同的,即1/n。平均查找长度(ASL)是指查找成功和查找失败的总次数与总关键字数的比值,也就是平均查找次数。在顺序查找中,当查找成功时需要比较的次数是1到n的等差数列和,即n(n+1)/2,当查找失败时需要比较n次。因此,ASL为:
ASL = [(1/n) * (n(n+1)/2) + ((n-1)/n) * n]/n = (n+1)/2
因此,对于n个元素的表做顺序查找时,平均查找长度为(n+1)/2。
在一个长度为n的线性表中顺序查找值为x的元素时,查找成功时的平均查找长度(即x同元素的平均比较次数,查找每个元素的概率都相等)为( )。
在一个长度为n的线性表中,采用顺序查找的平均查找长度可以表示为:
```
ASL = (1/n)*((1+2+...+n-1+n)/2)
```
其中,n为元素个数,1/n为每个元素被查找到的概率,括号中的式子为查找成功时需要比较的次数。将式子中的等差数列求和,得到:
```
ASL = (n+1)/2
```
所以,当采用顺序查找时,查找成功时的平均查找长度为(n+1)/2。
阅读全文