- 博客(8)
- 问答 (1)
- 收藏
- 关注
原创 floyd 和 dijkstra
floyd只需加上一个判断: dp[i][j] < 0 就说明有负环,因为dp[i][j]是从i出发,经过其他中转点转一圈回到自己的最短路径,如果小于0,就说明存在负圈。初始值: dp[0][i][j]: 若i,j是直连的,就是它们的边长;dp[k][i][j]: 范围1-n状态dp[k][i][j]表示在包含1-k点的子图上,点对i,j之间的最短路。k从1逐步扩展到n : 最后得到的dp[n][i][j]是点对i,j之间的最短路径长度。无向图: grap[i][j] = grap[j][i]
2024-05-10 19:36:05
316
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人