def _input(value, node): ''' FIXME: Implement this function. ''' if node.left is None: new_node = Node(value) node.left = new_node elif node.right is None: new_node = Node(value) node.right = new_node else: left = Heap.size(node.left) right = Heap.size(node.right) new_node = node.left if left <= right else node.right new_node = Heap._input(value, new_node) if new_node.value < node.value: tmp = new_node.value new_node.value = node.value node.value = tmp return node
def _input(value, node): if node.left is None: new_node = Node(value) node.left = new_node elif node.right is None: new_node = Node(value) node.right = new_node else: left = Heap.s1(node.left) right = Heap.s1(node.right) new_node = node.left if left <= right else node.right new_node = Heap._input(value, new_node) if new_node.value < node.value: tmp = new_node.value new_node.value = node.value node.value = tmp return node