2

我有点困惑,试图想出一个好的算法来导航下图。

替代文字 http://www.archimedesinc.biz/images/StackOverflow/Tree.jpg

如果用户选择“表 21”作为起点,我需要能够从该起始表获取到任何其他表的路径。

EX:如果用户选择“表 21”作为开始,然后从“表 8”中添加一个值,我需要创建以下路径“表 21 ->表 12 ->表 9 ->表 6 ->表 8 ",表之间的所有权重都是相同的。

我似乎忘记了自己处理有向图的技巧,想不出一个好的算法。我不是在寻求解决方案,而只是朝着正确的方向前进。

谢谢!

4

3 回答 3

3

广度优先搜索将找到最短路径:http ://en.wikipedia.org/wiki/Breadth-first_search

于 2009-05-01T19:07:20.213 回答
3

由于您说边缘的权重都相同,因此Dijkstra 的算法(我通常首选此类事物)只会降级为广度优先搜索,因此我建议为简单起见使用它。

于 2009-05-01T19:09:22.503 回答
1

您可以从多种算法中进行选择,以确定最短路径。QuickGraph擅长这种事情。

于 2009-05-01T19:13:08.233 回答