【发布时间】:2013-11-30 15:55:20
【问题描述】:
[注意:我希望这个问题可以在
O(n)时间解决。如果没有,我正在寻找证明它无法在O(n)时间内解决。如果我得到证明,我将尝试实现一种新算法,以不同的方式达到这些排序集的并集。]
考虑集合:
(1, 4, 0, 6, 3)
(0, 5, 2, 6, 3)
结果应该是:
(1, 4, 0, 5, 2, 6, 3)
请注意,排序集的并集问题很简单。这些也是排序集,但排序由一些其他属性定义,这些索引已从这些属性中解析。但是排序(无论它是什么)对两个集合都有效,即对于任何 i, j ∈ Set X,如果 i <= j,然后在其他一些集合 Y,对于相同的 i, j, i <= j。
编辑:很抱歉,我错过了一些非常重要的内容,我在下面的其中一个 cmets 中已经介绍过 — 两个集合的交集不是空集合,即这两个集合具有共同的元素。
【问题讨论】:
-
那些“其他属性”是否已知?您似乎可以使用这些属性将这些索引映射到已排序的线性集。
-
鉴于它们是“集合”,我们是否可以假设这些项目在一个集合中是不同的(即没有项目可以出现多次)?
-
是的,这些属性是已知的。您能解释一下“排序线性集的索引”是什么意思吗?
-
@Dukeling 是的,没错。
-
如果两个集合不同怎么办? A = {1} , B = {2},联合应该是什么样的?
标签: algorithm union complexity-theory time-complexity