两次递归

树的子结构

http://www.nowcoder.com/questionTerminal/6e196c44c7004d15b1610b9afca8bd88

class Solution:
    def HasSubtree(self, s, t):
        def sametree(p,q):
            if p is None and q is None:
                return True
            elif p is not None and q is not None and p.val==q.val:
                return sametree(p.left,q.left) and sametree(p.right,q.right)
            elif p is not None and q is None:
                return True
            else:
                return False
        def subtree(s,t):
            if s is None or t is None:return False
            if sametree(s,t):
                return True
            return subtree(s.left,t) or subtree(s.right,t)
        return subtree(s,t)

两次递归

全部评论

相关推荐

点赞 评论 收藏
分享
03-02 17:23
门头沟学院 Java
程序员小白条:换项目,然后技术栈加点408丰富,然后有没有水赛奖项填充下,另外注意主修课程没必要写,除非全是99,100...其他分数毫无毕业,你都985了
点赞 评论 收藏
分享
点赞 评论 收藏
分享
评论
4
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务