gAnt.remove_edge(11,12)#禁止边 (11,12)
lMinWPath=minWPath=1e9#置初值
for path in nx.all_simple_paths(gAnt,0,17):#所有起点为0...、终点为17的简单路径
if all(n in path for n in (2,4,7,12,13,14)):#满足路径中包括顶点 N7,N12
#检查(N2,N4)...")
print("S 到 E 的最短加权路径: ",minWPath)
print("S 到 E 的最短加权路径长度: ",lMinWPath)
edgeList = []
for i in range...、必经点的约束
S 到 E 的最短加权路径: [0, 2, 4, 5, 6, 7, 8, 14, 13, 12, 16, 17]
S 到 E 的最短加权路径长度: 13
算法:多个必经边的最短路径是遍历从起点到终点的简单路径...,求满足必经边条件的最短路径,同时满足必经点约束条件。