我有2063個位置存儲在一個MySQL表中。在我的一個過程中,我需要根據距離給定源點有多遠來排除某些結果。問題是,我需要一次篩選幾百個,也許幾千個結果。使用兩個座標之間的距離來處理最有效的方法是什麼?
那麼做距離數學的最好方法是什麼?我應該在運行時間做它
1. Find all points connecting to my point of origin
2. loops through the connecting points
3. calculate the distance between the point of origin and the connecting point
4. exclude the connecting point if the distance if too great
或者我應該創建一個查找表,每個點和每個點之間的距離已經計算出來。我可以避免重複行,因爲p1和p2之間的距離與p2和p1之間的距離相同,但是仍然會導致表中有幾百萬行。
或者..還有更好的方法嗎?
嘗試靜態查找表...生成的可執行文件的大小應該是有趣的:d〜2063! * 8個字節(對於每個結果的浮點數) – workmad3 2009-05-26 13:12:48