计算包含单元格的圆圈数量

时间:2014-12-01 19:36:41

标签: performance algorithm geometry

Cell constructed by the circles

假设我们已经给出了n个cirlces,它构建了细胞Ci。 给出了每个cirlce的中点(x-y坐标)和半径。 细胞的特征在于其结合该细胞的弧。

对于每个弧,给出以下信息: 1.它所属的圆圈的中点 2.源点和目标点为x-y坐标,弧起点和终点。 3.弧的中点也用x-y坐标给出。

对于Cell1,我将弧线染成黄色,蓝色和棕色。另外,我试图指出画面上弧线的中点,目标和来源。

现在,我想用运行时间O(n²)计算每个单元格所包含的圆圈数。 例如,Cell C1仅包含在1个圆圈中,Cell C11在2中,C5在3中。

我在O(m)中计算它的想法,其中m:=弧数。 我认为一般来说,弧的数量可以超过n²。

任何帮助或想法都将非常感谢!提前谢谢。

1 个答案:

答案 0 :(得分:2)

我认为一般来说,弧的数量可以超过n²。

你为什么这么想?

任何一对圆圈最多相交两个地方。因此,单个圆圈将被其他圆圈划分为最多2n - 2个圆弧。由于有n个圈子,因此最多只有2n2 - 2n = O(n2)个弧。