我正在为我的Disjoint Set寻找一个有效的 Union-Find (又名directed graph)数据结构,它有周期和森林。给定这样的图G
,我想回答以下问题:
- 我可以从
v
到达节点u
吗?
- 哪个节点{em}
?
醇>
对于单个"来源"节点u
,我可以运行DFS搜索并回答是否可以从中u
。在最坏的情况下,单个DFS搜索的上限成本为v
,其中m + n
和m
是顶点和边。但是,我有很多这样的"来源"节点和我想知道是否比从所有n
"源"中分别运行DFS更好的方法。节点(在最坏的情况下,其上限成本为m
。)
似乎这两个问题都可以通过联盟查找有效回答 - 查找有向图的数据结构。令我惊讶的是,在重要的在线搜索后我找不到任何解决方案。我在错误的方向上思考问题吗?
我发现了answer,但无法理解。