没有图书馆,我正在尝试学习数据结构。
我有这些依赖项
jquery.js->jqueryui.js
(underscores.js, jquery.js) -> backbone.js
基本上,jqueryui 依赖于 jquery。Bacbkone 依赖于下划线和 jquery。Jquery 和下划线不相关。
我想创建一个依赖树让你“阐明”这些关系。
有人告诉我这是如何在这个发布的问题上完成的。特别是这个评论。
只要您没有循环依赖项,您始终可以构建一个依赖项林,它仅由有向树和/或唯一节点组成。在树上,您可以简单地使用 DFS。然后,您首先将所有根或单个节点添加到队列中,并在加载它们的依赖项时将其他资源添加到队列中。(请注意,如果一个资源有多个依赖项,您不能将您的依赖项建模为森林,但它保持非循环,您可以使用类似的方法)。– 泽塔
...所以我确实有具有多个依赖项的资源,所以我不能使用依赖林。
...进一步的讨论提出了一个有向无环图。
有向无环图。从起点开始的每条路径都可以并行完成,但是如果一个节点有多个事件边,则您必须等待所有依赖项被加载。顺便说一句,我将示例 3 表示为 P:[U-underscore, U-jquery] S:[U-underscore, U-backbone-js] S:[U-jquery, U-backbone.js],显示原始依赖,但它们是等价的
我可以使用依赖树吗?如果不是,建议使用什么数据结构来模拟复杂的依赖关系......最后我该如何实现它?