python读取邻接矩阵txt文件计算最短路径并输出
时间: 2023-10-25 07:17:41 浏览: 70
tusuanfa.rar_tusuanfa_图 邻接矩阵_最短路径
可以使用Python中的networkx库来实现这个功能。以下是一个示例代码:
```python
import networkx as nx
# 读取邻接矩阵txt文件
with open('adjacency_matrix.txt', 'r') as f:
lines = f.readlines()
matrix = []
for line in lines:
row = list(map(int, line.split()))
matrix.append(row)
# 创建图并添加边
G = nx.DiGraph()
for i in range(len(matrix)):
for j in range(len(matrix)):
if matrix[i][j] != 0:
G.add_edge(i, j, weight=matrix[i][j])
# 计算最短路径
start = 0 # 起点
end = 4 # 终点
path = nx.shortest_path(G, source=start, target=end, weight='weight')
# 输出结果
print("最短路径为:", path)
```
这里假设邻接矩阵文件的文件名为"adjacency_matrix.txt",文件中每行为一个以空格分隔的整数序列,表示邻接矩阵的一行。示例代码中使用了有向图,如果需要使用无向图,可以将`nx.DiGraph()`改为`nx.Graph()`。
阅读全文