【发布时间】:2013-08-14 00:23:54
【问题描述】:
好的,基本上我的程序中有 2 个多维数组:
产生的距离: 空
999.0 22.0 38.0 9.0 12.0
10.0 999.0 9.0 22.0 24.0
10.0 41.0 999.0 25.0 49.0
4.0 2.0 18.0 999.0 1.0
4.0 38.0 8.0 20.0 999.0
道路矩阵:
null town town national regional
town null national motorway motorway
town motorway null regional town
motorway national national null town
town town national regional null
第一个数组生成距离,第二个数组生成这些距离的道路类型。
我正在使用一种算法来计算最佳路线,我正在处理第一个矩阵。我使用了一个数组列表。
[0, 4, 3, 1, 2, 0]
基本上我想在我的第二个数组中获取道路的索引。
结果应该如下[regional,regional,national,national,town]
我只是想知道使用第一个矩阵生成的结果最有效的方法是什么?
谢谢
【问题讨论】:
-
为什么你没有一个复杂类型的二维数组......节点(距离,道路)并让你的算法读取节点的距离而不是直接作为数组中的值。同样,填充这两个数组的任何内容都只会在一次传递中构造一个
new Node?由于某种原因,这对您不起作用吗? -
请解释一下列表的含义,以及结果列表是如何获得的。这些例子要么不一致,要么很难弄清楚。
-
@Doug 谢谢,这是我最初想做的,但发现很难实现。我正在考虑创建一个新对象 > 对象结果 = 新对象 [distance.length,road.length][]。感谢您的建议,并为我缺乏理解感到抱歉,我只是在这两个矩阵上苦苦挣扎,似乎无法掌握它们
-
@MarioRossi 谢谢你的回复。我正在使用分支定界算法来获得结果,这是在第一个矩阵上,我没有在第二个矩阵上实现任何东西,基本上是想从第一个获得的索引中获取第二个矩阵中值的索引。对不起,我对这一切的理解很差
-
@user2302621 你只需要创建一个新类。就像下面的答案一样。
标签: java matrix multidimensional-array arraylist indexing