【发布时间】:2017-07-25 11:45:08
【问题描述】:
如果我想在图中获取一个节点的所有邻居,如果将图存储在邻接矩阵中,时间复杂度为 O(|V|),如果存储在邻接矩阵中,时间复杂度为 O(|V|)邻接表。现在我在想,如果我不想获得一个节点的邻居而是所有节点,这将如何改变。 (注:邻接表包含一个数组和链表,每个数组入口存储一个链表,每个数组入口代表一个节点,链表中的每个节点代表一个相邻节点。)
我的过程如下:
在邻接矩阵中,我需要查看每个条目。因此我的时间复杂度是 O(|V|^2)。 在邻接列表中,我需要查看每个数组条目并浏览它们各自的链表。我在想,这应该在 O(|E|) 中完成,因为我基本上只查看所有边缘。
我的想法对吗?
【问题讨论】:
标签: arrays algorithm time-complexity graph-theory