1. 程式人生 > >【JS】 有效的山脈陣列 #陣列

【JS】 有效的山脈陣列 #陣列

給定一個整數陣列 A,如果它是有效的山脈陣列就返回 true,否則返回 false。

讓我們回顧一下,如果 A 滿足下述條件,那麼它是一個山脈陣列:

A.length >= 3
在 0 < i < A.length - 1 條件下,存在 i 使得:
A[0] < A[1] < … A[i-1] < A[i]
A[i] > A[i+1] > … > A[B.length - 1]



解法一:

有四種情況要返回false,一當陣列長度小於3,二當陣列存在相等的元素,三是完全倒序或順序,四是在峰頂之前有 i>i+1的 在峰頂之後存在 i<i+1


var validMountainArray = function(A) {
    let s1=0,s2=0
    
    for(let i=0;i<A.length-1;i++) {
        if(A[i]<A[i+1]){
            s2=1
            if(s1==1) return false;
        }else if(A[i]>A[i+1]){
            s1=1
        }else return false;
        
    }
    return s1==1 && s2==1 && A.length>2? true:false;

};