已知一坐标点,如何求其与无序点群最近的一个点

尘中远 2016-05-31 02:21:56
如图所示,红色点为已知的基准点,需要找到其距离最近的一个点,点序列是无序的,有没有比较快速的算法?


struct point{
double x;
double y;
}
std::vector<point> pointSeries
...全文
350 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
可以先分区吧 减少匹配量
用户 昵称 2016-06-08
  • 打赏
  • 举报
回复
本质上都是算一遍。
iceberg2271 2016-06-08
  • 打赏
  • 举报
回复
。。。你不遍历全部怎么知道点是最小的呢。。。。。 简单点就是以原点做为0,0来看,其他点可以相对做差值?
EP外星人 2016-06-01
  • 打赏
  • 举报
回复
点不多就自己算。 点要很多就要用GIS的手段,如空间数据库,在数据库层面就准备好了,求距离不过类似于按索引排序。 再就是自己实现 http://blog.csdn.net/wangliqiang1014/article/details/9143825
sliant 2016-05-31
  • 打赏
  • 举报
回复
遍历一遍。必须是O(n),因为要读取所有点

33,008

社区成员

发帖
与我相关
我的任务
社区描述
数据结构与算法相关内容讨论专区
社区管理员
  • 数据结构与算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧