我有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