#include <iostream>
int findMax(int* a, int l, int r)
{
int m = (l + r) / 2;
if(a[m] > a[m - 1] && a[m] > a[m + 1])
{
return a[m];
}
else if(a[m] > a[m - 1] && a[m] < a[m + 1])
{
return findMax(a, m + 1, r);
}
else
{
return findMax(a, l, m - 1);
}
}
int main()
{
int a[] = {1,2,3,4,5,8,9,22,6,5,4,1};
int res = findMax(a, 0, 11);
return 0;
}
在升序后降序数组中 找到最大的数
最新推荐文章于 2023-03-31 15:31:42 发布
本文介绍了一个用于在一维整数数组中寻找最大值的递归算法实现。该算法通过将数组分为两部分并递归地比较中间元素与左右两侧的最大值来找到全局最大值。文中提供了一个具体的示例,展示了如何使用该算法在一个特定数组中查找最大值。
摘要由CSDN通过智能技术生成