题目描述
符合下列属性的数组 arr 称为 山脉数组 :
arr.length >= 3
存在 i(0 < i < arr.length - 1)使得:
arr[0] < arr[1] < ... arr[i-1] < arr[i]
arr[i] > arr[i+1] > ... > arr[arr.length - 1]
给你由整数组成的山脉数组 arr ,返回任何满足 arr[0] < arr[1] < … arr[i - 1] < arr[i] > arr[i + 1] > … > arr[arr.length - 1] 的下标 i 。
力扣:852. 山脉数组的峰顶索引
题目分析
建议先参考 搜索旋转排序数组中最小值
此题和查找最小值的思想差不多,主要还是从分界点处进行分析,然后二分逼近即可;通过观察不难发现
1、当 arr[ mid + 1 ] > arr[ mid ] ,处于上坡状态, 即 峰值在 mid 右侧 ;
2、当 arr[ mid - 1 ] > arr[ mid ] ,处于下坡状态ÿ