コード例 #1
0
    def __init__(self):
        NineTailModel.__init__(self) # Invoke superclass constructor
           
        # Create a graph
        vertices = [x for x in range(NUMBER_OF_NODES)]
        graph = WeightedGraph(vertices, getWeightedEdges()); 

        # Obtain a BSF tree rooted at the target node
        self.tree = graph.getShortestPath(511)
コード例 #2
0
edges = [[0, 1, 807], [0, 3, 1331], [0, 5, 2097], [1, 0, 807], [1, 2, 381],
         [1, 3, 1267], [2, 1, 381], [2, 3, 1015], [2, 4, 1663], [2, 10, 1435],
         [3, 0, 1331], [3, 1, 1267], [3, 2, 1015], [3, 4, 599], [3, 5, 1003],
         [4, 2, 1663], [4, 3, 599], [4, 5, 533], [4, 7, 1260], [4, 8, 864],
         [4, 10, 496], [5, 0, 2097], [5, 3, 1003], [5, 4, 533], [5, 6, 983],
         [5, 7, 787], [6, 5, 983], [6, 7, 214], [7, 4, 1260], [7, 5, 787],
         [7, 6, 214], [7, 8, 888], [8, 4, 864], [8, 7, 888], [8, 9, 661],
         [8, 10, 781], [8, 11, 810], [9, 8, 661], [9, 11, 1187], [10, 2, 1435],
         [10, 4, 496], [10, 8, 781], [10, 11, 239], [11, 8, 810],
         [11, 9, 1187], [11, 10, 239]]

# Create a graph
graph1 = WeightedGraph(vertices, edges)

# Obtain a shortest path
tree1 = graph1.getShortestPath(5)
tree1.printAllPaths()

# Display shortest paths from Houston to Chicago
print("Shortest path from Houston to Chicago: ")
path = tree1.getPath(11)
print(path)

# Create vertices and edges
vertices = [x for x in range(5)]
edges = [[0, 1, 2], [0, 3, 8], [1, 0, 2], [1, 2, 7], [1, 3, 3], [2, 1, 7],
         [2, 3, 4], [2, 4, 5], [3, 0, 8], [3, 1, 3], [3, 2, 4], [3, 4, 6],
         [4, 2, 5], [4, 3, 6]]

# Create a graph
graph2 = WeightedGraph(vertices, edges)