题目:某个二叉树中是否存在一个元素
输入:二叉树和target
输出:True or False
思路:如果此节点的值==target,则返回True,否则看左右子树中是否存在此元素
代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
|
class : def __init__(self, x): self.val = x self.left = None self.right = None
def contain(root, key): if not root: return False if root.val == key: return True return contain(root.left, key) or contain(root.right, key)
tree = TreeNode(3) left_tree = TreeNode(9) right_tree = TreeNode(20) right_tree.left = TreeNode(15) right_tree.right = TreeNode(7) tree.left = left_tree tree.right = right_tree print(contain(tree, 200))
|
近期评论