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

Tell us what’s happening:

Describe your issue in detail here.

What’s wrong?

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,key):
        self.root = self._insert(self.root, key)

    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 search(self, key):
        return self._search(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 delete(self, key):
        self.root = self._delete(self.root, key)


# User Editable Region

    def _delete(self, node, key):
        if node is None:
            return node
        if key < node.key:
            self._delete(node.left, key)
            

# 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/120.0.0.0 Safari/537.36

Challenge Information:

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

You appear to have created this post without editing the template. Please edit your post to Tell us what’s happening in your own words.

Hello HttpsGabrisan,

You missed the last line of the question “Assign the function call to the left node.”. You got the rest correct though :slight_smile:

1 Like