集合覆盖问题（ Set covering problem，SCP）是组合数学、计算机科学和计算复杂性理论中的一个经典问题。集合覆盖的决定性问题是卡普的二十一个NP-完全问题之一。
定义.给定全集formula_1，以及一个包含formula_2个集合且这formula_2个集合的并集为全集的集合formula_4。集合覆盖问题要找到formula_4的一个最小的子集，使得他们的并集等于全集。例如formula_6，formula_7，虽然formula_4中所有元素的并集是