是轴平行的矩形。
是成对的,内部不相交的轴平行矩形,这样像这样:
甲矩形保留分区的是一个分区,使得,所述是成对-内部不相交轴线平行的长方形,并为每:,即每个现有矩形都包含在一个唯一的新矩形中,如下所示:
查找具有小的矩形保留分区的算法是什么?
特别是,是否有一种算法可以找到部分的矩形保留分区?
是轴平行的矩形。
是成对的,内部不相交的轴平行矩形,这样像这样:
甲矩形保留分区的是一个分区,使得,所述是成对-内部不相交轴线平行的长方形,并为每:,即每个现有矩形都包含在一个唯一的新矩形中,如下所示:
查找具有小的矩形保留分区的算法是什么?
特别是,是否有一种算法可以找到部分的矩形保留分区?
Answers:
新答案:以下简单算法是渐近最优的:
任意拉伸每个矩形,以最大可能的程度,以使矩形保持成对不相交的形式。
孔的数量最多为。这是渐近最佳的,因为存在其中孔的数量至少为。
证明在本文中。
旧答案:
以下算法虽然不是最佳算法,但显然足以找到具有部分的矩形保留分区。
该算法具有直线多边形,它被初始化为矩形。
阶段1:选择一个矩形的邻近的西边界(即,没有其他矩形西侧之间和的西边界)。将放在内并拉伸,直到它触及的西边界。令(对于)为的扩展版本。令。重复阶段1次,直到所有原始矩形被放置并拉伸。在下图中,放置矩形的可能顺序为:
现在,是一个直线多边形(可能是断开的),如下所示:
我宣称的数目凹顶点在至多是。这是因为,每当从删除拉伸矩形时,就有3种可能性:
第2阶段:分区到使用现有的算法轴线平行的矩形(参见Keil的2000年,10-13页和Eppstein的2009,页3-5综述)。
Keil引用了一个定理,该定理说最小分区中的矩形数量以1 +凹顶点的数量为界。因此,在我们的情况下,该数目最多,分区中矩形的总数为。
此算法不是最佳算法。例如,在上面的示例中,它给出了而最优解的结果是。因此,还有两个问题:
答:此算法正确吗?
B.是否有一个多项式时间算法来找到最佳,或者至少是一个更好的近似值?