, пожалуйста, предложите некоторые изменения в функции удаления для двоичного дерева в python. Я не могу удалить ни один элемент с этой частью кода.
def min_value_node(self,cur_node):
current=cur_node
while(current.left is not None):
current=current.left
return current
def delete(self,data):
if self.root==None:
return False
else:
return self._delete(data,self.root)
def _delete(self,data,cur_node):
if data>cur_node.data:
self. _delete(data,cur_node.right)
elif data>cur_node.data:
self. _delete(data,cur_node.right)
else:
if data==cur_node.data:
if cur_node.left is not None and cur_node.right is not None:
cur_node.data==self.min_value_node(cur_node.right)
else:
if cur_node.left == None:
cur_node = node.right
elif cur_node.right == None:
cur_node = node.left