valid mountain array leetcode
#673
- Author
- socdev
- Created
- Feb. 13, 2023, 8:10 p.m.
- Expires
- Never
- Size
- 1.3Â KB
- Hits
- 23
- Syntax
- Java
- Private
- â No
/*Valid Mountain Array
Given an array of integers arr, return true if and only if it is a valid mountain array.
Recall that arr is a mountain array if and only if:
arr.length >= 3
There exists some i with 0 < i < arr.length - 1 such that:
arr[0] < arr[1] < ... < arr[i - 1] < arr[i]
arr[i] > arr[i + 1] > ... > arr[arr.length - 1]
*/
class Solution {
public boolean validMountainArray(int[] arr) {
if (arr.length < 3) {
return false;
}
boolean isValley = false;
boolean hasIncreased = false;
int prev = arr[0];
for(int i = 1; i < arr.length; i++) {
if (prev == arr[i]) {
return false;
}
if (!isValley) {
if (prev > arr[i]) {
isValley = true;
}
if (prev < arr[i]) {
hasIncreased = true;
}
}
if (isValley) {
if (prev < arr[i]) {
return false;
}
}
prev = arr[i];
}
return isValley && hasIncreased;
}
}