because it recursive function. root.left and root.right need a node.
I believe it to be. None is not a reference variable.
you could also do this.
root.left = self._insert(root.left, val) # need the return
I believe it to be. None is not a reference variable.
you could also do this.
class Root: def __init__(self): self.root = None def insert(self, val, root='self'): if root == 'self': self.root = self.insert(val, self.root) elif root is None: return Node(val) elif val <= root.value: root.left = self.insert(val, root.left) else: root.right = self.insert(val, root.right) return root
99 percent of computer problems exists between chair and keyboard.