算法分析及设计-2016-第6讲.pptVIP

  1. 1、本文档共37页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
算法分析及设计-2016-第6讲

W1,W2,W3,M是3DM实例?X=W1?W2?W3, C=M是X3C实例 X={x1,x2,x3,x4,x5,x6} C={c1,c2,c3,c4} c1={x1,x2,x3} c2={x2,x4,x6} c3={x4,x5,x6} c4={x3,x4,x6} S={1,2,3,4,5,6,7},c1={1,2},c2={3,4,5},c3={5,6,7},c4={1,3,4},c5={1,2,6,7} 定理:MC?NPC。 证明:X3C?MC。 限制: (1)Ci?C,|Ci|=3 (2)|S|=3q,K=q。经过上述限制后就变成X3C了。 因为X3C是NPC,所以MC?NPC。 X3C 实例:X={x1,x2,…,x3q},X的3元素子集的集合C={c1,c2,…cm} 询问:是否存在C的子集C’严格覆盖X。即:?ci=X for ci?C’。 1 2 3 4 a b c d f(1)=d, f(2)=c, f(3) = a, f(4) = b 什么是同构? 例3:子图同构问题, 实例:G=(V,E),H=(V1,E1) 询问:是否存在G的子图与H同构。 定理:子图同构是NPC。 证明:限制H是完全图,该问题就变成团问题了。 图的同构问题可以多项式解答。但是子图同构是NPC的。 团问题实例:G=(V,E),J?Z+。 CL?子图同构:构造J个点的完全子图H。 同构问题人们研究历史很长,研究成果也很丰富。 图形同构,则化学特性相同或相近。 在一个图中找同构的子图,很有意义。 思考题: 1为什么顶点覆盖,团,独立集,划分问题是NP问题? 2分析划分问题,哈密顿回路问题属于NPC类证明中,多项式事件归约的复杂性。 算法分析与设计 第6讲-2016 山东大学计算机学院/软件学院 上次内容: (1)Karp证的6个NPC问题,已经证明了前3个。3sat,3dm,VC,需要看书。 (2)稍微解释: NP类:只限于Decision问题,多项式时间可验证的问题类。 NPC类:NP类的一部分,只要有一个能找到多项式时间算法, 则所有NP类中的问题都能找到多项式时间算法。 若任何一个NP问题都能多项式时间求解,不成立, 则任一NPC问题多项式时间求解也不成立。 NPC 设?=(?,L,?),若存在一个多项式时间的确定图灵程序M,对任意x ??*, x?L,当且仅当存在一个u??p(x), M(x, u)=1. 则? 为NP问题。 定理4.4:HC?NPC HC的描述: 实例:图G=(V,E) 询问:G中是否含有一个Hamilton圈? 解释什么是Hamilton圈:走遍所有点,点不重复的圈。老游戏。 例子:下面的实例,是顶点覆盖的实例. K=2/3 K=2/3 是否存在2个点覆盖所有边 是否存在2个点覆盖所有边 定理4.4:HC?NPC HC的描述: 实例:图G=(V,E) 询问:G中是否含有一个Hamilton圈? 解释什么是Hamilton圈:走遍所有点,点不重复的圈。老游戏。 例子:下面的实例,是顶点覆盖的实例. K=2/3 K=2/3 是否存在3个点覆盖所有边 是否存在3个点覆盖所有边 证明: 先讲一个图,称为检测覆盖子图. (1)14条边,12个点,检测怎样走遍所有点但不重复。两种方法。 (2)a?a’:梯子腿,从a开始,经过所有顶点,走出去, 只能从a’出去。 (3)b?b’:梯子腿,从b开始,经过所有顶点,走出去, 只能从b’出去。 证明: 先讲一个图,称为检测覆盖子图. (*)a?b’:从a开始,经过所有顶点,从b’走出去,存在走遍所有顶点的简单路吗?只能从a’出去。? (*)a?b:从a开始,经过所有顶点,从b走出去,存在走遍所有顶点的简单路吗?只能从a’出去。? 证明: 先讲一个图,称为检测覆盖子图. (*)a?b’:从a开始,从b’走出去; (*)b?a’:从b开始,从a’走出去,存在走遍所有顶点的简单路吗? 不行 (*)a?b:从a开始,从b走出去; (*)a’?b’:从a’开始,从b’走出去,存在走遍所有顶点的简单路吗? 不行 一遍走完所有点,怎么走?从点a开始,a’结束; 或b开始b’结束。 两遍走完所有点,怎么走?分别从点a开始,a’结束; b开始,b’结束。 性质:从点a开始,a’结束,只有一种走法, 从a开始,只能从a’走出去。 性质:分别从点a开始,a’结束;b开始,b’结束。 从a,b分别开始走,只有从a’,b’出去一种办法。 梯子怎样走完,让它只能一次走完或两次走完。 一次走完则走完两边,两 次走完则一次走一边。 a d b c 是否存在2个顶点,覆盖所有边? 回到说明 回到说明 a1, 梯子, a2, 梯子 a d b c 下面证明若梯子图存在Hamilton回路,则顶点

文档评论(0)

ipbohn97 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档