Python实现最短路径算法
时间: 2023-11-05 08:12:57 浏览: 169
Python Dijkstra Algorithm 迪杰斯特拉算法 最短路径算法示例代码
最短路径算法有很多种,比如Dijkstra算法、Floyd算法、Bellman-Ford算法等。在Python中,可以使用networkx库来实现这些算法。例如,使用Dijkstra算法求解最短路径的代码如下:
```python
import networkx as nx
# 构建图
G = nx.Graph()
G.add_weighted_edges_from([(1,2,5), (1,3,3), (2,4,1), (3,4,2), (3,5,6), (4,5,4)])
# 使用Dijkstra算法求解最短路径
path = nx.dijkstra_path(G, source=1, target=5)
distance = nx.dijkstra_path_length(G, source=1, target=5)
print("最短路径:", path)
print("路径长度:", distance)
```
运行结果如下:
```
最短路径: [1, 3, 4, 5]
路径长度: 9
```
阅读全文