Java 如何高效地搜索坐标列表

Java 如何高效地搜索坐标列表,java,arrays,performance,coordinates,Java,Arrays,Performance,Coordinates,我尝试使用一种有效的方法来搜索一个坐标(不在arrys中)是否在坐标数组中。我不会读取整个阵列,我会选择一个更好的解决方案。有人能帮我吗?正如两支铅笔队长评论的那样,只有在阵列上有某种排序原则的情况下,这才有效。您可以使用很多好的数据类型来帮助您做到这一点:,其中有一些是您突然想到的 如果您不能更改数据的结构,您仍然可以选择。我可以想象一种算法,你先用x坐标过滤,然后用y坐标过滤,性能甚至不会很差。如果它们是某种逻辑顺序,你可以分而治之。如果它们是二维坐标(如GPS),四叉树可能是合适的。#Ja

我尝试使用一种有效的方法来搜索一个坐标(不在arrys中)是否在坐标数组中。我不会读取整个阵列,我会选择一个更好的解决方案。有人能帮我吗?

正如两支铅笔队长评论的那样,只有在阵列上有某种排序原则的情况下,这才有效。您可以使用很多好的数据类型来帮助您做到这一点:,其中有一些是您突然想到的


如果您不能更改数据的结构,您仍然可以选择。我可以想象一种算法,你先用x坐标过滤,然后用y坐标过滤,性能甚至不会很差。

如果它们是某种逻辑顺序,你可以分而治之。如果它们是二维坐标(如GPS),四叉树可能是合适的。#Jason Mmmm我向你解释一下。我有两个点,我必须在两个点之间搜索汽车路径,但我可以在地图中选择另一个点,我必须验证该点是否在先前选择的汽车路径中。我不认为有一种秩序在汽车路径或我错了?也许,也许不是。取决于点列表的构造方式。一个点就是一对整数,显然整数是可以排序的。通过一些工作,你也可以点积分;我链接的维基百科文章向你展示了一些可能性谢谢你的建议@用户3806720我们通过投票或接受他们的答案来感谢他们