2-15 给定数组 a[0:n-1]试设计一个算法,在最坏情况下用[3n/2 -2 ] 次比较找出 a[0:n-1]中元
素的最大值和最小值;
2-15 参考答案:首先对数组相邻的两个进行比较,将大的放在后面,小的放在前面,然后
在两个数中小的所有数选出最小,同时也在两个数中大的所有数选出最大的。这样我们可以
得出总的比较次数:(int)(n/2)+2*((int)(n/2)-1).
这里由于考虑 n 的取值,比较次数要少于等于 n+cell(logn)-2,当 n 为 2 的幂方时,取
等号。(cell 这里表示取上界)