2011-03-27 106 views
0

我有一個矩陣5x5(25個節點)。有沒有一個公式可以找到矩陣中2節點i和j之間的最短距離?什麼是矩陣中2個節點之間的最短距離?

注意:1節點與其鄰居之間的距離爲1個單位。

=================

在我的觀察中,有與2個節點i和j 所以我不之間的距離相同許多路徑確定是否有一個公式來計算最短的一個?我很感激能否有人提供幫助。謝謝。

例如:i和j之間

* * * i * 
* * * * * 
* * * * * 
* * * * * 
* j * * * 

最短距離爲6個單位。

+0

什麼距離,什麼是鄰居?如何發佈你正在尋找的例子? – 2011-03-27 00:21:39

+1

請澄清一下:你想計算最短距離還是最短路徑?你能夠對角線移動還是隻能沿x/y方向移動? – sebastiangeiger 2011-03-27 00:22:14

+0

有幾種方法可以使用 – 2011-03-27 00:22:34

回答

3

我相信你需要什麼L1距離,也被稱爲Manhattan distance。所以如果你的兩個節點有矩陣索引(i1,j1)(i2,j2),那麼它們之間的最短距離是|i1-i2|+|j1-j2|

這當然,假設你不能對角移動。

0

我會認爲正常Pythagorean theorem會工作得很好。獲得你在哪裏和你想去的地方之間的X,Y差異;這會給你一個負面或正面的價值。從這裏你應該可以根據需要向上/向下/向右移動,直到你在同一行/列中。無法弄清楚如何獲得上標;但這會起作用。

a^2 + b^2 = c^2 
+0

這通常被稱爲歐幾里得距離 – 2011-03-27 00:26:04

+0

我沒有意識到距離有一個名字;我只知道用來找到它的公式。感謝您的信息! – Suroot 2011-03-27 00:32:40