leetcode 941 合法的山形数组
思想:
1.若数组为空或者只有一个元素,返回真
2.若只有增没有减返回假
3.有相等元素返回假
4.若到达峰值,进行下一重判断
若峰值之后应为先元素大于后元素,否则返回假
5.若都通过返回真,否则为假
class Solution(object):
def validMountainArray(self, A):
"""
:type A: List[int]
:rtype: bool
"""
flag=0
flag1=0
num=len(A)
if num==0 or num==1:
return False
i=1
while i<num:
if A[i]>A[i-1]:
flag=1
i+=1
elif A[i]==A[i-1]:
return False
else:
break
while i<num:
if flag==1 and A[i]<A[i-1]:
flag1=1
i+=1
continue
else:
return False
if flag1==1:
return True
else:
return False