图论中的圈与块acm.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
* 浙江省2006年集训讲义 * 探索第二部(4) 那么如何处理一个强连通子图的情况呢?如果让A来解决掉一个线索,那么肯定挑出A花费时间最少的那条线索;同理如果B来解决掉一个线索,那么肯定挑出B花费时间最少的那条线索。 于是可以将整个子图压缩成为一个点,A解决它所需要的时间是所有点中ai的最小值,B解决它所需要的时间是所有点中bi的最小值。 * 浙江省2006年集训讲义 * 探索第二部(5) 算法流程: (1)根据输入建图 (2)求出途中的所有强连通子图,并压缩成一个点 (3)挑出森林中所有的根结点,这些是必须被解决的线索 (4)用动态规划算法解决最小总花费的问题 * 浙江省2006年集训讲义 * 受欢迎的奶牛(1) N头奶牛,给出若干个欢迎关系A B,表示A欢迎B,欢迎关系是单向的,但是是可以传递的。另外每个奶牛都是欢迎他自己的。求出被所有的奶牛欢迎的奶牛的数目。(USACO FALL03) 数据范围约定: 奶牛数目N≤10000 直接的欢迎关系数目M≤50000 * 浙江省2006年集训讲义 * 受欢迎的奶牛(2) 可以想到的是,如果图中包含有强连通子图,那么就可以把这个强连通缩成一个点,因为强连通子图中的任意两个点可以到达,强连通子图中所有的点具有相同的性质,即它们分别能到达的点集都是相同的,能够到达它们的点集也是相同的。 通过大胆猜想,我们得到一个结论: 问题的解集是压缩后的图中,唯一的那个出度为0的点。 * 浙江省2006年集训讲义 * 受欢迎的奶牛(3) 首先,如果该图不是一张连通图,那么问题肯定是无解的。在假定图是一张连通图的情况下,我们需要证明如下一些东西: (1)解集为什么一定构成一个强连通子图? (2)同时存在2个出度为0的独立的强连通子图的时侯,为什么就一定无解? (3)只有一个出度为0的强连通子图的时候,为什么该强连通子图一定是问题的解集? (4)如果一个强连通子图的出度不为0,为什么就一定不是问题的解集? * 浙江省2006年集训讲义 * 受欢迎的奶牛(4) (1)解集为什么一定构成一个强连通子图? 证明: 假设A和B都是最受欢迎的cow,那么,A欢迎B,而且B欢迎A,于是,A和B是属于同一个强连通子图内的点,所以,问题的解集构成一个强连通子图。 * 浙江省2006年集训讲义 * 受欢迎的奶牛(5) (2)同时存在2个出度为0的独立的强连通子图的时侯,为什么就一定无解? 证明: 如果存在两个独立的强连通分量a和b,那么a内的点和b内的点一定不能互相到达,那么,无论是a还是b都不是解集的那个连通分量,问题保证无解。 * 浙江省2006年集训讲义 * 受欢迎的奶牛(6) (3)只有一个出度为0的强连通子图的时候,为什么该强连通子图一定是问题的解集? 证明: 假设在压缩过的图中,存在结点A,它到出度为0的结点(设为Root)没有通路,因为A的出度一定不为0,那么设他可以到B,于是B到Root没有通路,因为B的出度也一定不为0,那么设他可以到C……,如此继续下去,因为该图已经不可再压缩,所以这样下去不会出现已经考虑过的点(否则就存在有向环),那么这样下去之后,所有的点都到Root没有通路,而Root到其他所有的点也是没有通路的,因为它的出度为0,所以Root与其他所有的点是独立的,这与大前提“该图是连通图”矛盾。所以假设不成立。 * 浙江省2006年集训讲义 * 受欢迎的奶牛(7) (4)如果一个强连通子图的出度不为0,为什么就一定不是问题的解集? 证明: 如果某个强连通子图内的点A到强连通分量外的点B有通路,因为B和A不是同一个强连通子图内的点,所以B到A一定没有通路,那么A不被B欢迎,于是A所在的强连通子图一定不是解集的那个强连通子图。 * 浙江省2006年集训讲义 * 受欢迎的奶牛(8) 算法流程: (1)压缩有向图 (2)判断连通性,并找到图中出度为0的点的个数。 (3)如果图不连通或者出度为0的点的个数超过1,输出无解,否则转(4) (4)输出出度为0的点代表的强连通子图上的点 * 浙江省2006年集训讲义 * 科学是在不断的大胆猜想与小心求证中进步的! Thank you for listening! * 浙江省2006年集训讲义 * 参考文献 王树禾《离散数学引论》 刘汝佳/黄亮《算法艺术与信息学竞赛》 吴文虎/王建德《图论的算法与程序设计》 * 浙江省2006年集训讲义 * MST另类算法证明 我们通过kruskal算法的正确性来证明该算法的正确性 设该算法得到的MST’为T’,它不是原图的最小生成树T,则存在一条边e,有e∈T’且e∈T。由于T’不可再调整,所以在T’中添加e之后,e是所成环上的最大边。因而在做kruskal算法时候,该环上的所有边在e之前都会被事先考虑是否加入MST中,而在

文档评论(0)

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

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

1亿VIP精品文档

相关文档