首页 > 其他 > 详细

二分求最大值

时间:2018-07-23 21:37:09      阅读:226      评论:0      收藏:0      [点我收藏+]
#include<iostream>
using namespace std;
int getMax(int array[], int begin, int end){
    int Max1 = 0;
    int Max2 = 0;
    if (begin == end) {//划分到最后,剩余1个数
        return array[begin] = array[end];
    }
    else if(begin+1==end){//划分到最后,剩余2个数
        return array[begin]> array[end]?array[begin]: array[end];//谁大返回谁。
    }
    else{//如果剩余的数多于2个,划分成两段,选出这两段的最大值
        int mid=(begin+end)/2;
        Max1=getMax(array,begin,mid);
        Max2=getMax(array,mid+1,end);
        return Max1>Max2?Max1:Max2;
    }
};

二分求最大值

原文:https://www.cnblogs.com/Nicholastwo/p/9356899.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!