在 python networkx 中获取定向路径

Get directed path in python networkx

我只想使用 networkx 获取有向 G 中两个节点之间的有向路径。

目前,我正在这样做:

G=nx.fast_gnp_random_graph(NUMBER_OF_NODES,PPROB_OF_EDGE,True)
nx.bidirectional_dijkstra(G,u, v) #u and v are some nodes in G

这将return一条路径,即使 G 的边列表只有以下条目

[(u,w),(v,w)]

我的目标是只获得有向路径。 networkx 有办法做到吗?

当你这样做时

G=nx.fast_gnp_random_graph(NUMBER_OF_NODES,PPROB_OF_EDGE,True)

你最终得到了一个无向图。因此边 (u,w) 是一条无向边 --- (u,w)(w,u) 之间没有区别。谈论 "directed path".

没有意义

我相信您希望图形是有方向的,这就是您最后的 True 论点。但是由于 nx.fast_gnp_random_graph 采用其可选参数的顺序,这不是您正在做的。相反,你应该说

G = nx.fast_gnp_random_graph(NUMBER_OF_NODES, PROB_OF_EDGE, directed=True)

(请注意,我认为大写字母在 python 代码中通常不受欢迎)。