标签: polygon convex-hull
我需要一个允许
其中N是多边形中当前的点数 显然,这两个点将位于多边形的凸包上。使用反节点对(Rotating-Callipers)的概念,我们可以发现N点的直径是O(N)。 This巧妙地解释了O(n)解决方案,但它不支持插入点。
答案 0 :(得分:0)
k-d树可以在O(logN)中插入,只要它以某种方式balanced即可。对于直径部分,您必须检查每个节点以找到最远的部分,因此它应该是O(N)。 另一种解决方案是使用QuadTree,并遍历它以便仅获取位于树外部的节点。