Learn Tree Traversal by Building a Binary Search Tree - Step 29

Tell us what’s happening:

I thought I wrote the required code properly but the code is still not passing.
the output shown on the console is the first argument of the print call and the object’s memory address.

Your code so far


class TreeNode:

    def __init__(self, key):
        self.key = key
        self.left = None
        self.right = None


class BinarySearchTree:

    def __init__(self):
        self.root = None
    
    def _insert(self, node, key):
        if node is None:
            return TreeNode(key)

        if key < node.key:
            node.left = self._insert(node.left, key)
        elif key > node.key:

            node.right = self._insert(node.right, key)
        return node

    def insert(self, key):
        self.root = self._insert(self.root, key)
        
    def _search(self, node, key):
        if node is None or node.key == key:
            return node
        if key < node.key:
            return self._search(node.left, key)
        return self._search(node.right, key)
    
    def search(self, key):
        return self._search(self.root, key)


# User Editable Region

bst = BinarySearchTree()

nodes = [50, 30, 20, 40, 70, 60, 80]

for node in nodes:
    bst.insert(node)

print ('Search for 80: ', bst.search(80))


# User Editable Region

Your browser information:

User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/127.0.0.0 Safari/537.36

Challenge Information:

Learn Tree Traversal by Building a Binary Search Tree - Step 29

Basically correct, but you have 2 spacing problems.

Make sure the string is exactly the same as they want (you have an extra space)

Syntax for calling a function is:

function()

This includes the print() function.

Alright Thank you so much for your fast response!

1 Like