852 山脈陣列的峰頂索引 簡單

2022-01-18 09:24:51 字數 1159 閱讀 3258

題目**於力扣(leetcode)

目錄三、**實現

四、執行用時

五、部分測試用例

852. 山脈陣列的峰頂索引

說明:

據題意:陣列是乙個確定為山脈的陣列,即找到最大值既是頂峰遍歷陣列 a,對於每乙個元素都判斷是否大於索引後乙個元素,大於時,即是頂峰

使用二分查詢方式,每次對乙個計算得到的中間索引進行判斷

3 種情況的判斷

大於後乙個元素時,既可能為頂峰,也可能為頂峰後的元素,右指標為中間索引 - 1

小於時,說明在頂峰之前,左指標為中間索引 + 1

大於後乙個元素並且大於前乙個元素時,即是頂峰

public static int peakindexinmountainarray(int a) 

}return i;

}

public static int peakindexinmountainarray(int a) 

else if (a[mid] > a[mid + 1])

else if (a[mid] < a[mid + 1])

// 因為頂峰是存在的,所以不存在兩個元素等於的情況

852 山脈陣列的峰頂索引

題目分析可知肯定是有山峰的,所以其實就是找到最大值的索引就可以了 一 順序查詢 class solution def peakindexinmountainarray self,a list int int i 0 while a i a i 1 i 1 return i 二 二分查詢 class ...

LeetCode 852 山脈陣列的峰頂索引

我們把符合下列屬性的陣列a稱作山脈 給定乙個確定為山脈的陣列,返回任何滿足a 0 a 1 a i 1 a i a i 1 a a.length 1 的i的值。示例 1 輸入 0,1,0 輸出 1示例 2 輸入 0,2,1,0 輸出 1 3 a.length 100000 a i 10 6 a 是如上...

leetcode852 山脈陣列的峰頂索引

我們把符合下列屬性的陣列 a 稱作山脈 a.length 3 存在 0 i a.length 1 使得a 0 a 1 a i 1 a i a i 1 a a.length 1 給定乙個確定為山脈的陣列,返回任何滿足 a 0 a 1 a i 1 a i a i 1 a a.length 1 的 i 的...