1. 用dfs变量,记录程序调用了几次dfs才遍历完所有的节点
本来以为复杂度是n的,后来想到每个点不仅被访问了一次,因为要判断这个点是否已经访问过来
2.可以用并查集结构实现
只需要遍历图中的边,对每一条边,将其左右两个端点并为一组
时间复杂度是 n*k/2log(n)
k为边的数目
对于图相关的算法,通常情况下,遍历边比遍历点要快
1. 用dfs变量,记录程序调用了几次dfs才遍历完所有的节点
本来以为复杂度是n的,后来想到每个点不仅被访问了一次,因为要判断这个点是否已经访问过来
2.可以用并查集结构实现
只需要遍历图中的边,对每一条边,将其左右两个端点并为一组
时间复杂度是 n*k/2log(n)
k为边的数目
对于图相关的算法,通常情况下,遍历边比遍历点要快