Rt。在tarjan算法中,枚举点的子节点时,对点的 lowlowlow 更新有两种情况,一种是新节点,用它的 lowlowlow 更新,一种是栈内的节点,用 dfndfndfn 更新。
求问第二种写法也写用 lowlowlow 更新是否正确?在我使用tarjan的题目中似乎还没有出现过问题。
也即:
for(int i:E[x]){ if(!dfn[i]){tarj(i);low[x]=min(low[x],low[i]);} else if(in_stack[i])low[x]=min(low[x],dfn[i]); }