Gegeben ein Raster von Breite zu Länge (etwa 5 x 4) und ein Array von X- und Y-Koordinaten für Punkte auf diesem Raster, drucken Sie den Abstand von jedem Punkt auf dem Raster zu den Koordinaten wie folgt:Schneller Algorithmus für die Entfernung zwischen 2 Punkten auf einem Gitter?
width = 5
LEN = 4
x Koord = (2,4)
y = Koordinaten (2,3)
2123
1012
2112
2101
3212
A move "across" + 2 ist, Bewegung vertikal oder horizontal ist +1
Angenommen xCoords.length = yCoords.length
Ich werde meine Lösung veröffentlichen später, oder vielmehr der Versuch einer Lösung. Ich habe stecken versuchen, mit einer Funktion zu kommen Abstand zur Umsetzung von Gitterkoordinaten (i, j) für die Punkte auf Koordinaten ... Also im Grunde
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 ...
um die tatsächlichen Abstandswerte an diesen Koordinaten.
Sie sind auf der Suche nach [dem Satz des Pythagoras] (https : //en.wikipedia.org/wiki/Pythagorean_theorem)? – Gendarme
Nein, ich meine, ich weiß was es ist, ich bin nur nicht sicher, wie es hier reinpasst?Wie finde ich den Abstand von (i, j) zu der Koordinate bei xCoords/yCoords? Ich weiß nicht, wie ich diesen Schritt machen soll – sloven
Der kürzeste Weg von der unteren linken Ecke zur oberen Ecke ist die Hypotenuse. Wenn Sie die Koordinaten für die beiden Ecken haben, können Sie die Hypotenuse und damit auch die kürzeste Strecke (Entfernung) berechnen. – Gendarme