关于该叙述“顺序查找平均查找次数为(n+1)/2”
推导:
第一种论证方法:(严格来讲)
在元素个数为n的数组里进行查找,会有n种情况,其概率如下:
有1/n的概率:第1个是目标元素,即查找次数为1
有1/n的概率:第2个是目标元素,即查找次数为2
...
有1/n的概率:第n-1个是目标元素,即查找次数为n-1
有1/n的概率:第n个是目标元素,即查找次数为n
所以平均查找次数,也就是数学中的期望为:
期望 = 求和( 每种情况出现的概率 * 每种情况查找的次数) = 1/n+2/n+3/n+...+n/n =(1+2+...+n)/n = (1+n)*n/2 /n=(1+n)/2
证毕
第二种论证方法:(通俗来说)
在元素个数为n的数组里进行查找,目标元素出现的位置在1~n的位置上出现的概率都是相同的。
故如果从平均意义上讲,如果我们查找n次,可以认为目标元素分别出现在了第1,2,3,... n,位置上各一次(因为是等概率嘛),
也就是说查找n次一共花费的查找次数为 1+2+...n = (1+n)*n/2 ,这是查找n次,那查找一次就是再除以n,就是(1+n)/2