mediumArraysPattern: Modified Binary Search

Peak Element Index Solution

Problem Statement

Given an array of integers `heights` representing recorded measurements, find the index of the peak element, where a peak element is greater than or equal to its neighboring elements.

Examples

Example 1:
Input:[1, 3, 5, 3, 1]
Output:2
Explanation: The oxygen level at index 2 (5) is the highest and greater than or equal to its neighboring readings
Example 2:
Input:[1, 2, 3, 4, 5]
Output:4
Explanation: The oxygen level at index 4 (5) is the highest and greater than or equal to its neighboring readings

Constraints

  • 1 <= oxygen_levels.length <= 1000
  • 0 <= oxygen_levels[i] <= 10000
Time: O(log n) Space: O(1)
The optimal approach involves using a modified binary search algorithm to find the peak oxygen level in the array, resulting in a time complexity of O(log n). This approach takes advantage of the fact that the peak oxygen level must be greater than or equal to its neighbors.

Run, Test & Submit Code

Ready to practice this challenge? Launch our interactive compilation environment with compiler validation.

Solve on Interactive Workspace

Tested Solutions

No solution code is currently loaded.
Complete this code in the workspace editor.