0

It definitely meets the if node.val == q condition and node is defined inside the condition. But when I try to save the return value, it says None was returned.

class TreeNode(object):
    def __init__(self, val=0, left=None, right=None):
        self.val = val
        self.left = left
        self.right = right

def treeFind(q, node):
    if node == None:
        return None
    if node.val == q:
        return node

    if q > node.val:
        treeFind(q, node.right)

    else:
        treeFind(q, node.left)


one = TreeNode(1)
two = TreeNode(2)
three = TreeNode(3)

one.right = two
two.right = three


treeFind(2, one)
eclare
  • 139
  • 5
  • Because you are not returning when you are calling it recursively, change these lines: – if q > node.val: return treeFind(q, node.right) else: return treeFind(q, node.left) – amirhm Nov 09 '22 at 23:12

0 Answers0