【问题标题】:Determine the closest point确定最近点
【发布时间】:2021-07-14 14:44:56
【问题描述】:

数学模拟题:

假设我有一个“根”坐标 (x0,y0) 和其他坐标列表 ((x1,y2),(x2,y2),...(xn,yn)) 有没有比使用勾股定理扫描并获得到 (x0,y0) 的所有距离在计算上更好的方法来找到 (x0,y0) 的最近点?

谢谢

【问题讨论】:

  • math.dist()..
  • 如果它是一次性的,不是真的(你可以像 MrSmith42 所说的那样避免平方根),但是如果你用不同的 (x0,y0) 和相同的 (-ish ) (x1,y1),...,(xn,yn),那么你就有了选择。
  • @DavidEisenstat 我实际上是把它放到一个循环中,(x1,y1),...,(xn,yn) 总是改变。你有什么建议?
  • 点列表从何而来?
  • @DavidEisenstat 来自一组移动物体。比如,人类。

标签: python algorithm sorting coordinates


【解决方案1】:

比做2乘法简单吗?

我不这么认为。


请注意,您不需要计算平方根来比较哪个点更接近(因为 sqrt 是单调递增函数)。

所以为 {1,..,n} 中的每个 i 计算 (x0-xi)^2+(y0-yi)^2 并取最小值的那个。那是最近的点。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多