在坐标列表中找到最右上角的坐标

时间:2015-10-28 11:30:01

标签: arrays python-2.7 multidimensional-array coordinates distance

假设我有一个(x,y)坐标列表。其中一个列表如下:

coords = [(7, 37), (6, 38), (6, 37), (7, 38), (6, 39), (7, 39), (6, 40), (7, 40), (6, 41), (7, 41), (6, 42), (7, 42), (6, 43), (7, 43), (6, 44), (7, 44), (6, 45), (7, 45), (6, 46), (7, 46), (6, 47), (7, 47), (6, 48), (7, 48), (6, 49), (7, 49), (6, 50), (7, 50), (6, 51), (7, 51), (6, 52), (7, 52), (6, 53), (7, 53), (6, 54), (7, 54), (6, 55), (7, 55), (6, 56), (7, 56), (6, 57), (7, 57)]

现在说我想找到这些坐标形成的矩形的最右边的右上角

最初,我以为我可以做max(zip(*coords)[0]), min(zip(*coords)[1])。这将给我最大的x值和最大的Y值。但是,这一点不能保证在列表中。

可以在max(coords)找到右下角。左上角是min(coords)找到的。但如果我想找到右上角,最有效的方法是什么。

我可以遍历列表,并为每个值计算它与max(zip(*coords)[0]), min(zip(*coords)[1])的距离。但是,对于较大的点列表,为每个值执行平方根不是非常有效。

有没有快速找到大型列表中右上角的方法?

0 个答案:

没有答案