新听到一个超难算法题,大家来集思广益

2017-09-04 18:57:05 +08:00
 jlsk
给定 N 个基础点坐标(x,y),求离指定点(px,py)最近的基础点
基础点可以预处理
要求时间复杂度<N
4717 次点击
所在节点    问与答
29 条回复
helica
2017-09-05 08:31:03 +08:00
量化后,线段树乱搞吧
yangff
2017-09-05 09:40:01 +08:00
@jlsk sweeping line 之后你就可以知道每个点属于 voronoi 图中的哪个区域了
yangff
2017-09-05 09:59:36 +08:00
hmm …… 如果你的 px, py 不是预先给出的话,查询是 logn 的
至于你可以用的各种算法你可以参考一下这本书…… 计算几何--算法与应用(第三版)
GtDzx
2017-09-05 10:11:35 +08:00
话说 google onsite 出这题的话是想听到什么回答呢?
我如果说我知道可以用 voronoi 图搞,但是具体怎么搞不会。是不是直接就跪了 -_-!!
要不然是可以先假设基础点分布比较随机,扯一扯 kd-tree/geohash 以及 google s2 库的实现?
northisland
2017-09-05 10:21:53 +08:00
图片搜索 CBIR,或者图片配准中,的最基础问题了。
属于暴力搜索的近似问题,

现在最流行 Optimized Product Quantization 和 Product Quantization Tree。之前的 FLANN ( kd-Trees 和 K-Mean Trees 结合)也很经典。

https://github.com/yahoo/lopq
https://github.com/cgtuebingen/Product-Quantization-Tree

那都是高维数据的玩法,这就是二维。
1djmao
2017-09-05 10:38:15 +08:00
rashawn
2017-09-05 11:30:24 +08:00
预处理是啥意思…
zagreb
2017-09-05 12:12:37 +08:00
前几天不是有人发帖问“已知调色板中 N 个基本颜色,求任意颜色在调色板中最接近的颜色?”么。一个二位空间,一个 rgb 色彩空间。
artandlol
2017-10-26 20:45:06 +08:00
傻比

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/388127

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX