не удалось выполнить функцию удаления для двоичного дерева поиска в python. Пожалуйста, предложите необходимые изменения - PullRequest
0 голосов
/ 05 июля 2019

, пожалуйста, предложите некоторые изменения в функции удаления для двоичного дерева в 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
...