@@ -9,6 +9,13 @@ def print_dist(dist, v) -> None:
99
1010
1111def min_dist (mdist , vset , v ):
12+ """
13+ Returns the vertex with the minimum distance from the source vertex\
14+ that has not been visited.
15+
16+ >>> min_dist([0, 1, 6], [True, False, False], 3)
17+ 1
18+ """
1219 min_val = float ("inf" )
1320 min_ind = - 1
1421 for i in range (v ):
@@ -19,6 +26,20 @@ def min_dist(mdist, vset, v):
1926
2027
2128def dijkstra (graph , v , src ) -> None :
29+ """
30+ Calculate the shortest path from source to all other vertices\
31+ using Dijkstra's algorithm.
32+
33+ >>> graph = [[0.0, 1.0, 6.0],\
34+ [float("inf"), 0.0, 3.0],\
35+ [float("inf"), float("inf"), 0.0]]
36+ >>> dijkstra(graph, 3, 0) # doctest: +NORMALIZE_WHITESPACE
37+ <BLANKLINE>
38+ Vertex Distance
39+ 0 0
40+ 1 1
41+ 2 4
42+ """
2243 mdist = [float ("inf" ) for _ in range (v )]
2344 vset = [False for _ in range (v )]
2445 mdist [src ] = 0.0
@@ -35,7 +56,7 @@ def dijkstra(graph, v, src) -> None:
3556 ):
3657 mdist [i ] = mdist [u ] + graph [u ][i ]
3758
38- print_dist (mdist , i )
59+ print_dist (mdist , v )
3960
4061
4162if __name__ == "__main__" :
0 commit comments