使用python从相同垂直线中的坐标数中仅选择一个坐标的最短距离

时间:2014-11-04 15:25:23

标签: python algorithm python-3.x graph-algorithm shortest-path

我有list = coordinates,其中我有XY平面中所有这些点的坐标。

coordinates列表中提供的点数超过 1500 。我必须找到XY平面中从最左侧点到最右侧点的最小距离,这样如果两个或多个点位于同一垂直线中,则只选择其中一个用于路径并因此选择距离计算。

coordinates列表的示例是:

coordinates = [(-6, 0), (-5.82, 1.72), (-5.17, -0.27), (-4.28, 0.0), (-2.9, -0.74), (-2.9, -0.2), (-1.55, 0.08), (-1.37, -0.43), (4.8, -1.64), (4.92, -0.25), (5.05, -1.45), (5.36, -0.02), (6, 0)]

因此,在这种情况下,不会考虑点(-2.9,-0.74)

如何使用 Dijksra算法来处理这种情况或任何其他适合最短路径的算法,还可以删除不需要的垂直线中的这些点。

我正在使用itertoolspermutate找到所有可能的路径,然后找到距离,然后是最小距离,但它不适合超过 1000 的点数不可能忽略我提到的相同的垂直线坐标。请在python

中提供帮助

0 个答案:

没有答案