编辑代码

#include <iostream>
using namespace std;
void Max_Min(int a[],int left,int right,int & max,int & min)
{
	int mid,lmax,rmax,lmin,rmin;
	if(left==right)
    {		
		max=a[left];
		min=a[right];
		return;	
	}
    else
    {
		mid=(left+right)/2;	
		Max_Min(a,left,mid,rmax,rmin);
		Max_Min(a,mid+1,right,lmax,lmin);
		if(lmin>rmin)
			min=rmin;
		else
			min=lmin;
		if(rmax>lmax)
			max=rmax;
		else
			max=lmax;
	}
}
int main() {
    int max,min;
	int a[]={11,9,20,56,42,3,7,15,16};
	Max_Min(a,0,8,max,min);
	printf("最大值为:%d\n",max);
	printf("最小值为:%d",min);
	return 0;
}