leetcode_941 有效的山脉数组

用一个变量left来记录是否处在上山,关注头尾,如果在头部是下山或在尾部是上山都返回false,在left=true的时候为上山,当到尾部还是上山则返回false(i===A.length-1),否则如果出现下山,判断是否为开头,如果开头为下山则返回false,否则将left改为false;当处于下山的时候,如果再次出现上山则返回false,最后返回!left 出现顶点则true否则false.

function validMountainArray(A: number[]): boolean {
  let left:boolean = true 
  if(A.length<3) return false
  for(let i=1; i<A.length; i++) {
    if(left) {
      if(A[i-1]>A[i]){
        if(i===1) return false
        left = false
     } else if(i===A.length-1) return false
    } else if(A[i-1]<=A[i]) {
       return false
    }
   }
   return !left
};
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。