示例#1
0
def main(argv):
    tree = BST([1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15])
    tree.preorder_traversal(tree.root)
    print("Next largest value of node {} is: {}".format(
        tree.root.left.left.value,
        next_largest(tree.root.left.left).value))
    print("Next largest value of node {} is: {}".format(
        tree.root.left.right.value,
        next_largest(tree.root.left.right).value))
    print("Next largest value of node {} is: {}".format(
        tree.root.left.left.right.value,
        next_largest(tree.root.left.left.right).value))
示例#2
0
def main(argv):
    tree = BST([1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15])
    tree.preorder_traversal(tree.root)
    nodea = tree.root.left.left
    nodeb = tree.root.right.left.left
    print("Lowest common ancestor of {} and {} is: {}".format(
        nodea.value, nodeb.value, lowest_common_ancestor(nodea, nodeb)))
    print("Lowest common ancestor of {} and {} is: {}".format(
        nodea.value, nodeb.value,
        lowest_common_ancestor_recursive(nodea, nodeb)))
    nodea = tree.root.left.left
    nodeb = tree.root.left.right.left
    print("Lowest common ancestor of {} and {} is: {}".format(
        nodea.value, nodeb.value, lowest_common_ancestor(nodea, nodeb)))
    print("Lowest common ancestor of {} and {} is: {}".format(
        nodea.value, nodeb.value,
        lowest_common_ancestor_recursive(nodea, nodeb)))
    nodea = tree.root.left.left
    nodeb = tree.root.left.left.right
    print("Lowest common ancestor of {} and {} is: {}".format(
        nodea.value, nodeb.value, lowest_common_ancestor(nodea, nodeb)))
    print("Lowest common ancestor of {} and {} is: {}".format(
        nodea.value, nodeb.value,
        lowest_common_ancestor_recursive(nodea, nodeb)))