图论 —— 图的连通性 —— Tarjan 求强连通分量

【概述】 Tarjan 算法是基于对图深度优先搜索的算法,每个强连通分量为搜索树中的一棵子树。 搜索时,把当前搜索树中未处理的节点加入一个堆栈,回溯时可以判断栈顶到栈中的节点是否为一个强连通分量。 【基本思路】 定义 DFN(u) 为节点 u 搜索的次序编号(时间戳),即是第几个被搜索到的,Low(u) 为 u 或 u 的子树能够追溯到的最早的栈中节点的次序号。 每次找到一个新点 i,有:DFN(
相关文章
相关标签/搜索