7.已知前序中序求后序

2018-06-08  本文已影响0人  土味老猪
class Solution():
    def findroot(self,pre,mid,post):
        if len(pre) == 0:
            return 

        else:
            post.append(pre[0])
            m = mid.index(pre[0])
            self.findroot(pre[m+1:],mid[m+1:],post)
            self.findroot(pre[1:m+1],mid[:m],post)
            
            
    
    def findpost(self,pre,mid):
        post = []
        s.findroot(pre,mid,post)
        return post[::-1]


#test
pre = ['A','B','D','E','G','I','H','C','F']
mid = ['D','B','G','I','E','H','A','C','F']
s = Solution()
print(s.findpost(pre,mid))

上一篇 下一篇

猜你喜欢

热点阅读