题目
解法
递归
class Solution:
def verifyPostorder(self, postorder: List[int]) -> bool:
if len(postorder)<=1:
return True
root = postorder[-1]
idx = -1
for i in range(len(postorder)-1):
if postorder[i]>root:
idx = i
break
if idx>=0:
for i in range(idx, len(postorder)-1):
if postorder[i]<root:
return False
return self.verifyPostorder(postorder[0:idx]) and self.verifyPostorder(postorder[idx:len(postorder)-1])
return self.verifyPostorder(postorder[0:len(postorder)-1])