我有一个无向图,我想列出起始节点的所有可能路径。 在列出的路径中,两个节点之间的每个连接都是唯一的,例如,给出以下图形表示形式:
{A: [B, C, D],
B: [A, C, D],
C: [A, B, D],
D: [A, B, C]}
某些列出的路径从A
A, B, C, D, A, C in this path we have a connection between
A and B but we can't have a connection between B and A
我无法使用DFS那样的现有算法来完成此任务。 任何帮助将不胜感激。
答案 0 :(得分:1)
最简单的方法是递归地尝试每个邻居并合并所有结果。
这假设没有循环-如果您允许循环(如您的示例所示),将有无限多的路径。在这种情况下,您可以通过限制要检查的路径长度,然后遍历所有可能的路径长度来制作路径生成器。