1.分析使用分治法求数组元素的总和
#include<stdio.h>
int fun(int *a,int l,int r){
int mid;
if(l==r)
return a[l];
else if(l==r-1)
return a[l]+a[r];
else
{
mid=(l+r)/2;
return fun(a,l,mid)+fun(a,mid+1,r);
}
}
int main(){
int a[10]={1,2,3,4,5,6,7,8,9,10};
int size=sizeof(a)/sizeof(a[0]);
printf("元素个数为%d\n",size);
int sum=fun(a,0,size-1);
printf("数组元素总和为%d\n",sum);
return 0;
}