1. 程式人生 > >分治練手之求陣列中最大元素

分治練手之求陣列中最大元素

程式碼:

#include<stdio.h>

int Max_Element(int *a,int s,int e){
	int mid=(s+e)/2;
	int max,m1,m2;
	if (s<e){
		m1=Max_Element(a,s,mid);
		m2=Max_Element(a,mid+1,e);	
		return max=(m1>m2?m1:m2);
	}
	return a[s];
}

int main(){
	int a[4]={1,3,5,1};
	int n=4,s=0,e=3,max;
	max=Max_Element(a,s,e);
	for(int i=0;i<n;i++){
		printf("%d ",a[i]);
	}
	
	printf("最大元素為:%d\n",max);
	getchar();
}