zoukankan      html  css  js  c++  java
  • 传递闭包

    所谓传递性,可以这样理解:对于一个节点i,如果j能到i,i能到k,那么j就能到k。求传递闭包,就是把图中所有满足这样传递性的节点都弄出来,计算完成后,我们也就知道任意两个节点之间是否相连。 

    传递闭包的计算过程一般可以用Warshell算法描述: 
    For 每个节点i Do 
        For 每个节点j Do 
        If j能到i Then 
            For 每个节点k Do 
            a[j, k] := a[j, k] Or ( a[j, i] And a[ i, k] ) 
    其中a数组为布尔数组,用来描述两个节点是否相连,可以看做一个无权图的邻接矩阵。可以看到,算法过程跟Floyd很相似,三重循环,枚举每个中间节点。只不过传递闭包只需要求出两个节点是否相连,而不用求其间的最短路径长。

  • 相关阅读:
    hdu 1542 Atlantis
    cf C. Cupboard and Balloons
    cf C. Tourist Problem
    hdu 4027 Can you answer these queries?
    hdu 1255 覆盖的面积
    hdu 1698 Just a Hook
    zoj 1610 Count the Colors
    hdu 4302 Holedox Eating
    hdu 4288 Coder
    tsne理论学习
  • 原文地址:https://www.cnblogs.com/FuTaimeng/p/5610355.html
Copyright © 2011-2022 走看看