Python 中是否有 igraph 函数用于返回 shortest_path 结果的索引

Is there an igraph function in Python for returning the indexes of shortest_path results

我有一个无向图,我知道它具有针对特定点集(例如 105 和 149)的有效最短路径。

我不确定如何解释结果以获取 shortest_paths 函数遍历的节点的索引。

如果从 105 开始的路径经过:117、123、29、35、56、78 并在 149 终止。如何检索索引数组 [117、123、29、35、56、78 ]?

我的代码是这样的:

path = G.shortest_paths(source=[G.vs[105]], target=[G.vs[149]], mode='all')

我的 path 对象 returns 一个类似 [[6]] 的数组。

看起来 igraph.shortest_paths 不是为这种用途设计的。尝试 igraph.get_all_shortest_paths 改为:

import igraph as ig
g = ig.Graph(n=5, edges=[(0,1), (1,4), (2,3), (2,4), (2,5) , (3,5), (4,6), (6, 0)], directed=False)
path = g.get_all_shortest_paths(0, to=2)
>>> path
[[0, 1, 4, 2], [0, 6, 4, 2]]
>>> [p[1:-1] for p in path]
[[1, 4], [6, 4]]