浅析连通分量low数组

2019-08-20 08:50:53 上午

  • dfn[] 数组代表的是时间戳,即结点访问的时间次序。不是结点所在的深度。

  • 以其他的点作跳板,达到所能达到的时间戳最小的结点。这是没有意义的,因为只要把中间的任意一个结点删去,这条“桥”就相当于断了。应当看该结点只走一步所能达到的时间戳最小的结点

  • A - - > B - - > C
    <- - <- -

    从C到B再到A,虽然B能到A,但是更新C时 low[C] = min(low[C], dfn[B]), min中不应该是low[B]使low[C] = low[B], 因为low[B] = dfn[A] , 也就是说C可以到达A,但是如果去掉B,C就不能到A。即

low[u] = min(low[u], dfn[v]);
  • A - - > B - - > C D
    < - - - - - - - - -

    C能到D,D能到A。更新为C能到A,这是合理的,因为D是C的子树,判强联通分量时,他们是一个整体,割掉的是树根向外所连接的边,而不是树的内部,所以树内的点能到达的时间戳最小的点,树根也能到达。即
    
low[u] = min(low[u], low[v])

原文链接: https://www.cnblogs.com/daybreaking/p/12782841.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍;

也有高质量的技术群,里面有嵌入式、搜广推等BAT大佬

    浅析连通分量low数组

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/344566

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年3月2日 上午2:46
下一篇 2023年3月2日 上午2:46

相关推荐