为什么DFS算法在邻接矩阵表示中具有O(V 2 )复杂度,在邻接列表表示中具有O(V + E)。
答案 0 :(得分:6)
对于矩阵:
每个顶点都有一行和一列。如果从顶点i到顶点j有一条边,则位置i,j包含1。
整个矩阵的大小为| V | ^ 2
为什么复杂性为| V | ^ 2?
因为矩阵中的每个位置都被访问过一次。
对于邻接链表:
链接列表的集合,每个顶点都有一个列表,以便顶点v的列表是与顶点v相邻的所有顶点的列表。
为什么复杂性是| E | + | V |? 因为邻接链表中的每个位置都被访问过一次并且存在| V |顶点和| E |边缘。