我正在同时学习javascript和数据结构,并在图表的输出上苦苦挣扎。任何人都可以帮我修改我的代码输出开始和结束节点之间的所有可用路径?
如果我输入F到C,我会得到以下内容:
F -> B C :3
F -> A D G :4
F -> A D E :3
F -> C B E F G :7
F -> C D :3
F -> D :1
F -> B D :3
F to C
F D B
F D C
F D
F D E
F
F D G
我希望第一个输出显示从F到C的所有可用路径。它现在正在显示所有可用路径。第二个输出显示所有可用路径但不正确。
当我输入F和C时,我正试图让第一个输出显示如下:
F -> D C: 2
F -> D E C: 4
F -> D B A C: 5
F -> D G B A C: 7
我看过这些:
https://en.wikipedia.org/wiki/Depth-first_search
All the paths between 2 nodes in graph
http://www.quora.com/What-are-good-ways-to-find-all-the-possible-paths-between-two-nodes-in-a-directed-graph
Graph Algorithm To Find All Connections Between Two Arbitrary Vertices
https://mathematica.stackexchange.com/questions/25779/finding-all-simple-paths-between-two-vertices-in-a-graph
https://mathematica.stackexchange.com/questions/4128/finding-all-shortest-paths-between-two-vertices
和其他许多人一样,我仍然被困住了。
我的代码在这里: https://jsfiddle.net/jtlindsey/584hh0vf/3/
到目前为止,我的两个输出从代码中的行号116和209开始。