我有一个 n 部分(无向)图,作为邻接矩阵给出,例如这里的这个:
A B C D 一个 0 1 1 0 b 0 0 0 1 c 0 0 0 1 d 0 0 0 0
我想知道是否有一组矩阵运算可以应用于这个矩阵,这将导致一个矩阵“列出”这个图中的所有路径(长度为 n,即通过所有分区)。对于上面的示例,有路径 a->b->d 和 a->c->d。因此,我想得到以下矩阵作为结果:
A B C D 1 1 0 1 1 0 1 1
第一条路径包含节点 a、b、d,第二条路径包含节点 a、c、d。如有必要,结果矩阵可能有一些全为 0 的行,如下所示:
A B C D 1 1 0 1 0 0 0 0 1 0 1 1 0 0 0 0
谢谢!
PS我看过计算传递闭包的算法,但这些通常只告诉两个节点之间是否存在路径,而不是直接告诉哪些节点在该路径上。