课程期末作业:《算法概论》课后8.22题的证明

本文探讨了反馈弧集(FAS)问题及其与顶点覆盖问题的关系,通过构造特定的有向图来证明FAS问题是NP完全问题,并详细阐述了如何通过顶点覆盖实例求解FAS问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

题目:

题目截图一
题目截图二

证明:
(a) FAS可从通过顶点覆盖的减少证明是NP完全。给出了一个顶点覆盖实例(G,b),其中G是一个无向图,我们想要一个小于等于b顶点覆盖,我们构建了一个实例(G,b)FAS如下:如果G =(V,E)有n个顶点v1,…,vn,然后使G0 =(v0,E0)是一个有向图,包含2n个顶点W1,W’ 1,…,WN,W’ N,和N + 2 | E |(有向)边,(WI,i)所有i = 1,2,…,n(w’i,wj)和(w’j,wj)每(vi,vj)∈E。由于FAS是可以在多项式时间内验证的,所以该问题属于NP问题。
(b)设G中一个大小为t的顶点覆盖为C,对于任意定点vi,vi属于C,设其在G’中相对应的顶点为wi和w’i,那么将边(wi,w’i)添加紧E’中,将C中的顶点进行处理,进行一遍遍历之后就得到了相应的E’,而E’就是要求解的FAC问题的结果,它的大小为t,这是因为对于顶点wi和wi’,当去掉(wi,wi’)之后所有与wi相邻的边都不可能位于任何一个环中,这是因为wi,不存在出的边,同理可得与wi’相邻的边都不可能位于任何一个环中,这是因为wi’,不存在入的边。
(c)对于G中的任意一条边(vi,vj),设边中顶点在G中对应着wi,wi’,wj,wj’,相对应的就是边(wi,wi’),(wj,wj’),(wi’,wj)以及(wj’,wi),如果E’是G’的一个大小为t的FAS,那么这四条变中至少有一个是属于E’的否则就会形成环,那么边e一定有一个端点是属于{wi,wj},如果wi是e的端点,那么将vi,加入到C中,否则将vj加入到C中,那么C就是G的与一个 大小最大为t的顶点覆盖。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值