我有一组相互依赖的元素。这些依赖关系可能是严格的,例如。a
取决于b
和c
; 或者某些元素可能有替代品,例如。s
取决于t
或u
。没有循环依赖。
我正在尝试对依赖信息做两件事:
- 确定给定的一组元素是否已解决所有依赖关系
- 列出所有可能的完全解析的元素集
(事实上 2 在给定 1 的情况下是微不足道的,因为我可以在资源允许的情况下生成所有排列并检查它们。不过可能有更好的算法。)
是否有适用于具有替代依赖项的元素的算法?我发现很多只考虑严格依赖关系,但我不知道足够的术语来缩小我的搜索范围。