美文网首页
五. 二叉树 4 Check Full Binary Tree

五. 二叉树 4 Check Full Binary Tree

作者: 何大炮 | 来源:发表于2018-03-06 08:18 被阅读0次

    思路:
    只要判断每一个点是否都是没有child or 2 children,如果树里的每个node都是这样,那么这是一个FBT的。
    通过DFS遍历每一个点。

    class Solution:
        """
        @param: : the given tree
        @return: Whether it is a full tree
        """
    
        def isFullTree(self, root):
            # write your code here
            def dfs(root):
                
                if root.right and root.left:            
                    value_left = dfs(root.left)
                    value_right = dfs(root.right)
    
                if root.right and not root.left:
                    return False
                if not root.right and root.left:
                    return False
                if not root.right and not root.left:
                    return True
                     
                value  = value_right & value_left
                return value
                
            return dfs(root)
    

    相关文章

      网友评论

          本文标题:五. 二叉树 4 Check Full Binary Tree

          本文链接:https://www.haomeiwen.com/subject/kfbcfftx.html