后向边:v->u(discovered),后代访问到自己的祖先:有回路;

前向边:v->u(visited),v先被发现,祖先访问到已经被访问完的后代:有多条路径。

跨边:v->u(visited),u先被发现。

 

 有向图的dfs