【JS】 有效的山脈陣列 #陣列
阿新 • • 發佈:2018-11-30
給定一個整數陣列 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; };