算法:找到包含整个域的最少集合数

标签 algorithm data-structures

给定几个集合和一个数字n:

Here assume n is 5:
a - (0,1,2)
b - (0,1,2,3)
c - (1,3,4,5)
d - (0,1,2,4)
e - (2,3,4,5)
f - (3,5)

现在,如果我们只取 bc,我们将得到从 0 到 5 的整个范围。

我正在考虑一种贪婪的方法,但它似乎不适合这里。

最佳答案

这是 set cover problem并且因此是 NP 完全的,这意味着您必须考虑所有可能的解决方案并选择最小的解决方案。

关于算法:找到包含整个域的最少集合数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17009214/

相关文章:

javascript - 对深层嵌套的高阶函数应用递归

sql - 根据加入日期和离开日期选择用户

c++ - 存储各种尺寸也各不相同的结构的好方法?

algorithm - 大数据模式匹配的数据结构

string - 从文件中读取 URL 字符串列表并查找前 10 个最常阅读的 URL

c++ - 为给定的字符串生成所有可能的回文

Python递归扩展列表

algorithm - 最短根到叶路径

c++ - C++ 中的对称矩阵

c++ - LNK2019未解析的外部符号。创建二叉树