예제 #1
0
def main():
    """main function"""
    node1 = GraphNode(name="1", value=1)
    node2 = GraphNode(name="2", value=2)
    node3 = GraphNode(name="3", value=3)
    node4 = GraphNode(name="4", value=4)

    node1.add_children([(node3, 3), (node4, 10)])
    node3.add_children([(node2, 1), (node1, 2)])
    node4.add_children([(node2, 4)])

    node5 = GraphNode(name="5", value=5, children=[(node1, 10)])

    graph = Graph([node1, node2, node3, node4])
    graph.add_node(node5)
    print(shortest_path(graph, node1, node2, 0, []))