最短路径(Python)networkx 包
2017-11-16 17:02
1876 查看
# -*- coding: utf-8 -*- import networkx as nx import pylab import numpy as np #自定义网络 row=np.array([0,0,0,1,2,3,6]) col=np.array([1,2,3,4,5,6,7]) value=np.array([1,2,1,8,1,3,5]) print('生成一个空的有向图') G=nx.DiGraph() print('为这个网络添加节点...') for i in range(0,np.size(col)+1): G.add_node(i) print('在网络中添加带权中的边...') for i in range(np.size(row)): G.add_weighted_edges_from([(row[i],col[i],value[i])]) print('给网路设置布局...') pos=nx.shell_layout(G) print('画出网络图像:') # nx.draw(G,pos,with_labels=True, node_color='white', edge_color='red', node_size=400, alpha=0.5 ) # pylab.title('Self_Define Net',fontsize=15) # pylab.show() ''' Shortest Path with dijkstra_path ''' print('dijkstra方法寻找最短路径:') path=nx.dijkstra_path(G, source=0, target=7) print('节点0到7的路径:', path) print('dijkstra方法寻找最短距离:') distance=nx.dijkstra_path_length(G, source=0, target=7) print('节点0到7的距离为:', distance)
相关文章推荐
- 【Python学习系列二十六】networkx库图最短路径求解
- python中networkx包学习——最短路径函数shortest_path及shorest_path_length
- python包NetworkX学习——最短路径dijkstra_path和dijkstra_path_length
- 最短路径算法—Floyd(弗洛伊德)算法分析与实现(Python)
- Python基于Floyd算法求解最短路径距离问题实例详解
- python 利用模拟退火算法求解TSP最短路径
- Python使用Dijkstra算法实现求解图中最短路径距离问题详解
- Networkx常用算法和求最短路径介绍
- 推箱子游戏 最短路径 python实现
- 狄克斯特拉算法,解决加权最短路径问题--python实现
- 最短路径问题:Dijkstra算法的python实现
- python编写的最短路径算法
- python解决最短路径问题:Floyd-Warshall算法
- 有向图最短路径floyd算法的python实现
- python最短路径算法,基于dijkstra
- python—networkx:求图的平均路径长度并画出直方图
- 用Python实现Dijkstra算法用来寻找两点之间的最短路径 (Implementation of Dijkstra in Python)
- 最短路径算法 python
- python 利用爬山法和迪杰斯特拉算法求解TSP最短路径
- Python-通过Dijkstra计算两点之间的最短路径