我正在解决一个问题,即为一组任意放置的非相交椭圆找到最近的三个邻居。作为一个新用户,我不允许包含图像标签,但我在页面底部包含了 URL,因为我一直认为我能够更好地使用视觉辅助工具来解释自己。这张图片展示了我所说的将 3 个最近的椭圆彼此连接起来的阿波罗尼奥斯圆。
到目前为止,我已经尝试使用椭圆之间的最小距离并修改 Delaunay 三角剖分,通过增量和扫描线方法,使用各种技术涉及在每 3 个椭圆配置之间形成的三角形圈等,并尝试使用边界框估计邻居,以及完全没有关于如何真正有效地工作的想法
虽然我已经制定了一个解决方案,但它涉及详尽搜索并比较每个椭圆的三个椭圆与其他椭圆,并且时间复杂度为n(n-1)(n-2)/3!
. 最重要的是,每个计算都是迭代而不是代数完成的。
有没有人知道如何以代数方式完成这个并且n^2
时间复杂度更低?
即使是关于一种技术的建议也适合我尝试,因为现在我已经在这方面工作了将近 3 周,而且真的离一个体面的答案还差得远。