间接依赖关系

proghua 2012-03-29 06:42:23
假设模块A依赖于B、C、D,B依赖于E、F、G,E依赖于X、Y、Z,
每个模块都可能有直接依赖和间接依赖,不可能存在环形的依赖关系即A->B->A这种情况
如何求A的所有依赖关系,包括直接依赖和间接依赖。
求一个算法
...全文
180 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
muyi66 2012-03-30
  • 打赏
  • 举报
回复
用有向图来表达这个关系,遍历时单层出来的就是直接依赖,多层出来的就是间接依赖。
自信男孩 2012-03-30
  • 打赏
  • 举报
回复
我想也是一种遍历,树的结构可以解决这个问题。
恨天低 2012-03-30
  • 打赏
  • 举报
回复
就是一颗树的遍历吧?广度优先搜索,深度优先搜索。
Defonds 2012-03-30
  • 打赏
  • 举报
回复
有向图
barech 2012-03-30
  • 打赏
  • 举报
回复
采用深度优先的方式进行遍历搜索。

思路:
设置结果集合vector, 遍历A的依赖项B,然后遍历B的依赖项,将取到的依赖放到vector中,遍历结束B;再遍历C/D,直至遍历结束。

69,371

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧