Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # Number of vertices
- nV = 4
- INF = 999
- # Algorithm
- def floyd(G):
- dist = list(map(lambda p: list(map(lambda q: q, p)), G))
- # Adding vertices individually
- for r in range(nV):
- for p in range(nV):
- for q in range(nV):
- dist[p][q] = min(dist[p][q], dist[p][r] + dist[r][q])
- sol(dist)
- # Printing the output
- def sol(dist):
- for p in range(nV):
- for q in range(nV):
- if(dist[p][q] == INF):
- print("INF", end=" ")
- else:
- print(dist[p][q], end=" ")
- print(" ")
- G = [[0, 5, INF, INF],
- [50, 0, 15, 5],
- [30, INF, 0, 15],
- [15, INF, 5, 0]]
- print("The initial matrix is: ")
- sol(G)
- print("After Floyd Warshall Algorithm: ")
- floyd(G)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement