精确覆盖问题

✍ dations ◷ 2025-11-26 04:15:05 #理论计算机科学,NP完全问题

在一个全集X中若干子集的集合为S,精确覆盖是指,S的子集S*,满足X中的每一个元素在S*中恰好出现一次。

在计算机科学中,精确覆盖问题指找出这样的一种覆盖,或证明其不存在。这是一个NP-完全问题,也是卡普的二十一个NP-完全问题之一。

满足以下条件的集合为一个精确覆盖:

合二为一,即X中的元素在S*中出现恰好一次。

S {\displaystyle {\mathcal {S}}} , , , } 是集合 = {1, 2, 3, 4}的一个子集的集合,并满足:

其中一个子集 {, } 是 的一个精确覆盖,因为 = {1, 3} 而 = {2, 4} 的并集恰好是 = {1, 2, 3, 4}。同理, {, , } 也是 .的一个精确覆盖。空集并不影响结论。

通常我们用S的每个子集与X的元素之间包含关系的二元关系来表示精确覆盖问题。

包含关系可以用一个关系矩阵表示。. 矩阵每行表示S的一个子集,每列表示X中的一个元素。矩阵行列交点元素为1表示对应的元素在对应的集合中,不在则为0.

通过这种矩阵表示法,求一个精确覆盖转化为求矩阵的若干个行的集合,使每列有且仅有一个1。同时,该问题也是精确覆盖的典型例题之一。

下图为其中一个例子:

S* = {, , } 便是一个精确覆盖。

包含关系也可以用一个二分图表示。

二分图左侧每个节点表示S的每个集合,右侧每个节点表示X的每个元素,而精确覆盖便是一种匹配,满足右侧的每个点恰好有一条边。

Exact-cover-bigraphExact-cover-bigraph-solved

X算法是高德纳提出的解决该问题的算法,而舞蹈链算法(Dancing Links,DLX)算法是X算法在计算机上的一种高效实现。

相关

  • 适应现代生物分类群体从它们的 共同祖先遗传分化的图示。进化论介绍(英语:Introduction to evolution) 演化的证据 共同起源 共同起源的证据群体遗传学 · 遗传多样性 突变 · 自
  • 伊丽莎白女王级伊丽莎白女王级可以指:
  • 疟蚊属见内文疟蚊属(学名:Anopheles),别称按蚊或马拉利亚蚊,是蚊科(Culicidae)下的一属,成虫的特征是翅膀大多数有斑,停留时身体与停留面保持一角度。其中有30—40种是疟原虫属生物的寄主,会
  • 《刺胳针》《柳叶刀》(The Lancet),是世界上最悠久及最受重视的同行评审医学期刊之一,主要由爱思唯尔出版公司发行,部分与里德·爱思唯尔集团协同出版。1823年由汤姆·魏克莱(英语:Thomas Wak
  • 武汉铁路局中国铁路武汉局集团有限公司,原名武汉铁路局,为中国国家铁路集团下属公司。国铁武汉局集团公司于2017年铁路局公司化改制而成,管辖范围基本上在湖北省全境以及河南省南部、安徽
  • 阿芙罗飞车阿芙罗飞车(英语:Avrocar,型号为VZ-9),是在冷战初期,Avro Canada公司为美军的一个秘密计划研制的一款垂直起降飞机。为了帮助美国空军及美国陆军研制更先进的战斗机与战术攻击机,Av
  • 数字千年版权法数字千年版权法(英语:Digital Millennium Copyright Act, DMCA)是一个美国著作权法律,它实现了两个世界知识产权组织(WIPO)在1996年通过的条约。它以刑事犯罪立法的形式禁止了受著
  • Socket 441133 MHz(QDR,FSB533)Socket 441是英特尔(Intel)PGA的CPU插槽,且功耗低,通常用于轻薄本PC,智能手机和其他低功耗设备。Intel Atom Z5XX 处理器的规范(尺寸为13毫米x 14毫米,其特征是引
  • 羊权羊权(?-?),字道舆,泰山郡南城县(今山东省新泰市)人,西晋侍中羊忱之子,东晋官员。羊权的伯父羊秉任抚军参军,有很好的名声,虚龄三十二岁时就去世。夏侯湛给羊秉作传,对他极力赞颂和哀悼。羊
  • 兰开夏郡足总挑战杯兰开夏郡足总挑战杯(Lancashire Football Association Challenge Trophy),是一个英格兰足球杯赛允许兰开夏郡足球协会的非联赛球会参加,赛事在1885年首度举行而当时被称为兰开夏