Graph 如何使用DFS算法为时间复杂度为O(E+;V)的每个节点查找所有长度的路径

Graph 如何使用DFS算法为时间复杂度为O(E+;V)的每个节点查找所有长度的路径,graph,time-complexity,depth-first-search,Graph,Time Complexity,Depth First Search,例如,我有一个无向图G,我有节点V和边E。我想使用dfs算法来发现每个节点的连接节点的距离为2(通过距离2,我的意思是两个节点被两条边分开,例如,如果V=a,b,c和E=(a,b),(b,c),那么a和c以距离2连接)。我想在时间复杂度O(V+E)中这样做。 我希望答案是用伪代码或python解释的。 如果您有什么需要我澄清的,请评论。您只是不使用DFS。使用BFS。阅读这篇文章,如果您想要python实现,请搜索极客中的极客。 如果您仍然有问题,请评论并标记 显然,这不需要O(V+E)。每个节

例如,我有一个无向图G,我有节点V和边E。我想使用dfs算法来发现每个节点的连接节点的距离为2(通过距离2,我的意思是两个节点被两条边分开,例如,如果V=a,b,c和E=(a,b),(b,c),那么a和c以距离2连接)。我想在时间复杂度O(V+E)中这样做。 我希望答案是用伪代码或python解释的。
如果您有什么需要我澄清的,请评论。

您只是不使用DFS。使用BFS。阅读这篇文章,如果您想要python实现,请搜索极客中的极客。 如果您仍然有问题,请评论并标记

显然,这不需要O(V+E)。每个节点需要O(d^2),其中d是最大节点秩。总之,对于所有节点,它都是O(Vd^2)