//普通算法
var numDoubles=new double[]{125,514,54,54,5,45,45,25,54,5,45121,4,54,5,5};
var max = numDoubles[0];
var min = numDoubles[0];
for (int i = 1; i < numDoubles.Length; i++)
{
    if (numDoubles[i]>max)
    {
        max = numDoubles[i];
    }
    if (numDoubles[i]<min)
    {
        min = numDoubles[i];
    }
}
Console.Write($"最大值:{max},最小值:{min}");
//分治算法实现“求数组中最大值”
var numDoubles=new double[]{125,514,54,54,5,45,45,25,54,5,45121,4,54,5,5};
double GetMax(double[] arr,int left,int right)
{
    if (arr==null||arr.Length==0)
    {
        return -1;
    }
    //如果查找范围中仅有一个数字
    if (right-left<=1)
    {
        if (arr[left]>=arr[right])
        {
            return arr[left];
        }
    }
    //等量划分成 2 个区域
    var middle = (right-left)/2 + left;
    var max_left = GetMax(arr,left,middle);
    var max_right = GetMax(arr,middle+1,right);
    if(max_left >= max_right) {
        return max_left;
    }else {
        return max_right;
    }
}

var max = GetMax(numDoubles, 0, numDoubles.Length-1);
Console.Write($"最大值:{max}");