【发布时间】:2015-03-06 00:35:46
【问题描述】:
此问题类似于“精确命中集”问题 (http://en.wikipedia.org/wiki/Exact_cover#Exact_hitting_set),但约束条件略有不同。
我正在寻找解决以下问题的库、实现或论文。
假设我有一组集合S,初始化如下:
S = {N, O, P, E};
N = {1, 2, 5}
O = {4, 5}
P = {1, 6, 7}
E = {2, 3, 8}};
S 有 n 个集合,每个子集的大小未知。在这个例子中n = 4
现在我有了另一组大小为 n 的 X,它被初始化为:
X = {1, 2, 4, 6}
我需要做的是,将 X 中的每个元素与 S 中的一个且仅一个集合匹配。
所以 S 应该对映射到 X 的所有集合完全满意,反之亦然。
X[0] --> N
X[1] --> E
X[2] --> O
X[3] --> P
我遇到的主要问题是如何处理 S 集中的重复数据。我该如何处理这些冲突?以及如何以相对可扩展的方式实现算法?
如果您有任何信息可以为我指明解决此问题的正确方向,我们将不胜感激。
【问题讨论】:
标签: mapping combinatorics computation-theory np-complete set-theory