设计一个算法:用不多于3n/2的平均比较次数,在数组A[1,...,n]中找出最大值和最小值的元素

如果在查找出最大值和最小值的元素时各遍历一遍所有元素,至少需要比较2n次,所以用一遍遍历找出最大值和最小值的元素。

void maxmin(int A[],int n)
{
    int i;
    int max,min;
    max=A[1];
    min=A[1];
    for(i=2;i<=n;i++)
    {
        if(A[i]>max)
            max=A[i];
        else if(A[i]

设计一个算法:用不多于3n/2的平均比较次数,在数组A[1,...,n]中找出最大值和最小值的元素_第1张图片

你可能感兴趣的:(数据结构)