wiflsnmo
2016-04-12 08:36
采纳率: 0%
浏览 1.4k

图的算法问题 已知边的起止节点求其中一个系统节点总数

求大神帮我想个算法,我有n组数据对,src->target,展示出来就是数个有向无环图,每个分隔的图称为一个系统,要求给出两个数据我能知道这两个数在不在同一个系统以及这个系统的节点总数是多少。有没有什么简单可行的方法啊
图片说明图片说明

  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • threenewbee 2016-04-12 09:48

    无非就是递归遍历。你每个节点除了本身数据之外,加上一个bool值表示是否被遍历过,伪代码如下:
    int countNode(Node n)
    {
    int r = 0;
    n.Visited = true;
    for (subn : n.Nodes)
    {
    if (!subn.Visited)
    r += countNode(subn);
    }
    return r + 1;
    }

    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题