dfs由于每次都要面临若干的选择,所以时常会有一个变量用来标记不同时空的状态,这种变量一般是通过 【变量标记 】 ;dfs(状态1);【变量标记解除】的方式进行的
这里的标记变量其实就是一个时间戳,是一种很基本的时间戳,用于分离不同时空
基本的时间戳用来分离不同时空的状态,而时间戳也可以用于相同时空下的标记,用在一些判定的前面,防止判定出错。
比如在寻找一个环时,一般判定是即将访问的点是否已经被访问过,如果被访问过,则可能形成环,为什么说是可能形成环呢,因为,如果是两个链交在一点,那个点也被访问了两次,所以这时如果直接判定点被访问过后再次被访问就是环就错了,这时如果加一个标记变量数组,也就是时间戳,用于区分是否来自同一条链就能避免出现判定错误。