
Given an array of integers which is initially increasing and then decreasing, find the maximum value in the array.
Examples :
Input: arr[] = {8, 10, 20, 80, 100, 200, 400, 500, 3, 2, 1}
Output: 500
Input: arr[] = {1, 3, 50, 10, 9, 7, 6}
Output: 50
Corner case (No decreasing part)
Input: arr[] = {10, 20, 30, 40, 50}
Output: 50
Corner case (No increasing part)
Input: arr[] = {120, 100, 80, 20, 0}
Output: 120
Using binary search with a little bit change.
time complexity: O(log n)
The force brute way: O(n)
1 |
int findMaximum(vector<int>& array){ |




近期评论