给定一个邻接矩阵,如何找到两个节点之间的最短路径,同时遍历每个点至少一次并返回它需要的移动次数?在邻接矩阵中寻找路径
例
鉴于这种阵列
int[][] points = { { 0, 1 },{ 0, 2 },{ 1, 2 },{ 1, 3 },{ 3, 4 } };
我使像这样的邻接矩阵...
0 1 2 3 4
0 [0] [1] [1] [0] [0]
1 [1] [0] [1] [1] [0]
2 [1] [1] [0] [0] [0]
3 [0] [1] [0] [0] [1]
4 [0] [0] [0] [1] [0]
从0最短路径 - 图4是(0-2 )(2-1)(1-3)(3-4)并计为4次移动。
我真的不知道如何去更进一步。可能是最小生成树解决方案?提前致谢。
http://en.wikipedia.org/wiki/Shortest_path;随你选。 – 2013-04-07 23:50:49
遍历每个点至少一次 - >听起来类似于[哈密尔顿路径](http://en.wikipedia.org/wiki/Hamiltonian_path),这不是一个容易解决的问题。 – Dukeling 2013-04-07 23:53:11
[约翰逊算法](http://en.wikipedia.org/wiki/Johnson%27s_algorithm)在[这里](http://stackoverflow.com/q/2939877/230513)被检查。 – trashgod 2013-04-07 23:53:23