假设我有一个在D维空间中的N个轴对齐超立方体的集合。
每个超立方体都有一个定点在原点,一个顶点在正半轴(即所有坐标严格为正)。后者定义了超立方体,因此超立方体的集合可以由一个顶点集合来给出,每个超立方体对应一个顶点。
您可以假设我已经从超立方体列表中删除了任何一个超立方体,该超立方体严格包含于另一个超立方体内。(当前我是通过一个简单的O(N ^ 2 * D)算法来实现的。附带问题:我能做得更好吗?)
我需要找到所有超立方体的并集的顶点,但不包括其中任何一个或多个零坐标的顶点。
在二维情况下,共有N-1个这样的顶点,可以通过在一个(任意的)坐标上对顶点进行排序来高效地找到它们,即O(N log(N))。
在D维中有多少这样的顶点?(两个超立方体的情况下,似乎只会产生一个新的顶点,因此可能仍然是N-1?)如何高效地找到这些顶点?
每个超立方体都有一个定点在原点,一个顶点在正半轴(即所有坐标严格为正)。后者定义了超立方体,因此超立方体的集合可以由一个顶点集合来给出,每个超立方体对应一个顶点。
您可以假设我已经从超立方体列表中删除了任何一个超立方体,该超立方体严格包含于另一个超立方体内。(当前我是通过一个简单的O(N ^ 2 * D)算法来实现的。附带问题:我能做得更好吗?)
我需要找到所有超立方体的并集的顶点,但不包括其中任何一个或多个零坐标的顶点。
在二维情况下,共有N-1个这样的顶点,可以通过在一个(任意的)坐标上对顶点进行排序来高效地找到它们,即O(N log(N))。
在D维中有多少这样的顶点?(两个超立方体的情况下,似乎只会产生一个新的顶点,因此可能仍然是N-1?)如何高效地找到这些顶点?