我正在寻找一种有效的算法来解决依赖图中的一系列模块的依赖,并具有以下约束:
目标示例
在此示例中,提供了两个绿色的节点作为起点。红色节点永远不会访问。访问了白色的每个节点。计划按步骤执行加载(在节点内部指示)。
您对遵循这些规则的算法有任何暗示吗?
答案 0 :(得分:0)
可以通过使用拓扑排序来解决此问题,这在this维基百科文章中有所描述;请注意,本文从“依赖关系解决方案”重定向。所描述算法的运行时间为
O(|V| + |E|)
其中V
是节点集,E
是边集,即运行时间与输入大小成线性关系。