对任意一个路径可重复点覆盖(不一定最小),如果存在一个点被重复覆盖了,那么就任取经过其的两条路径和。如果此时图中已经存在了或者,假设存在,那么我们可以将变成,从而的覆盖次数减少一,并且仍然是当前图的路径可重复点覆盖(也就是说任何一条路径的边都属于当前图);如果此时图中既不存在也不存在,那么我们随便添加一条边,不妨添加,从而我们可以将变成,的覆盖次数减少一,并且是当前图的路径可重复点覆盖;一直重复上述过程,最后会得到一个新图,并且得到这个新图的路径点覆盖,而这个新图显然是传递闭包的子图,所以这个新图的路径点覆盖也就是传递闭包的一个路径点覆盖。也就是说原图的任意一个路径可重复点覆盖都可以转化成传递闭包的路径点覆盖;传递闭包的任意一个路径点覆盖,也可以转化成原图的路径可重复点覆盖,只需要将路径点覆盖中不属于原图的边替换成原图中到的路径即可
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构