我想用半径和中心坐标表示N个圆,我想知道是否存在一种算法来确定点P是否存在,使得P在所有圆内。

最佳答案

一个简单的O(n ^ 3)方法是简单地计算每对圆的交点,然后对每个交点进行测试以查看其是否在所有圆中。

将有O(n ^ 2)个交点,并且测试每个交点都需要O(n),所以总体来说是O(n ^ 3)。

我相信唯一的方法是所有圆内都可以有点,而不是相交点是,如果最里面的圆完全在其他圆内,那么您还应该测试每个圆的中心。

关于algorithm - N个圆的常见重叠,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25045766/

10-09 05:29