給定一個網格的長度(如5 x 4)寬度和該網格上點的X和Y座標陣列,打印網格上每個點與座標的距離如下:網格上2點之間距離的快速算法?
width = 5
LEN = 4
X COORDS =(2,4)
ŷCOORDS =(2,3)
2123
1012
2112
2101
3212
甲移動 「橫跨」 是+ 2,垂直或水平移動是+1
假設xCoords.length = yCoords.length
我稍後會發布我的解決方案,或者說在一個解決方案的嘗試。我被困試圖拿出一個功能轉由網格座標(I,J)的點座標距離...所以基本上
for i .. width
for j .. length
getDistance(i,j, xCoords,yCoords)
(0,0)(0,1)(0 ,2)(0,3)
(1,0)(1,1)(1,2)(1,3)
(2,0)(2,1)(2,2 )(2,3)
etc ...
到這些座標的實際距離值。
您是否在尋找[勾股定理(HTTPS ://en.wikipedia.org/wiki/Pythagorean_theorem)? – Gendarme
不,我的意思是,我知道它是什麼,我只是不確定它是如何適合這裏的?我如何計算從(i,j)到xCoords/yCoords座標的距離?我不知道如何做到這一步 – sloven
從左下角到上角的最短路線是斜邊。如果您有兩個角的座標,則可以計算斜邊,從而計算最短路線(距離)。 – Gendarme