计算森林中的树木数量

时间:2018-12-02 18:37:39

标签: algorithm graph graph-algorithm depth-first-search

我试图从教科书中回答以下问题。

  

给出一个森林的n个节点及其边缘,描述并证明找到森林中树木数量的算法。

以这张图为例:

graph

假设我们使用DFS从顶点0开始对其进行探索,该DFS按以下顺序访问顶点:0、2、1、5、4、3、6。

相应的DFS林将如下所示:

this

上面的森林包含两棵树,我认为我们可以使用以下算法来计算森林中的树数。 [Source of algorithm]

  1. 在每个节点上应用DFS。
  2. 如果从一个源访问每个连接的节点,则增加一。
  3. 如果某些节点尚未访问,则再次执行DFS遍历。
  4. Count将给出森林中的树木数量。

我的问题是:如何证明该算法正确,是否有更有效的算法来获取森林中的树木数量?

0 个答案:

没有答案