gpt4 book ai didi

graph - 为什么 DFS 的复杂度在邻接矩阵中是 O(V^2) 而在邻接列表表示中是 O(V+E)?

转载 作者:行者123 更新时间:2023-12-04 04:11:11 30 4
gpt4 key购买 nike

为什么 DFS 算法在邻接矩阵表示中具有 O(V2) 复杂度,在邻接列表表示中具有 O(V+E) 复杂度。

最佳答案

对于矩阵:

每个顶点有一行和一列。如果从顶点 i 到顶点 j 存在边,则位置 i,j 包含 1。

整个矩阵的大小为|V|^2

为什么复杂度是|V|^2?

因为矩阵中的每个位置都被访问一次。

对于邻接链表:

链接列表的集合,每个顶点都有一个列表,使得顶点 v 的列表是与顶点 v 相邻的所有顶点的列表。

为什么复杂度是|E|+|V|?
因为邻接链表中的每个位置都被访问了一次并且有|V|顶点和 |E|边缘。

关于graph - 为什么 DFS 的复杂度在邻接矩阵中是 O(V^2) 而在邻接列表表示中是 O(V+E)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24101412/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com