# -*- coding:utf-8 -*-
class Solution:
def VerifySquenceOfBST(self, sequence):
# write code here
if sequence==None or len( sequence )==0:
return False
return self.judge( sequence,0,len( sequence )-1 )
def judge(self,a,l,r):
if l>=r:
return True
root=a[r]
i=None
for i in range( l,r ):
if a[i]>root:
break
''' 上一步中有可能找不到大于root的i '''
if a[i]<root:
return self.judge( a,l,r-1 )
for j in range( i,r ):
if a[j]<root:
return False
print i
return self.judge( a,l,i-1 ) and self.judge( a,i,r-1 )