标签: data-structures
每棵树都是有向的非循环图(DAG),但是存在不是树的DAG。 a)我们如何判断给定的DAG是否是树? b)设计一个算法来测试给定的DAG是否是树?
答案 0 :(得分:0)
检查确切的n - 1边(其中n是顶点数)。
n - 1
n
检查是否存在零度不足的顶点。
从此顶点运行深度优先搜索,并检查是否可以从中找到所有顶点。
如果这个条件中至少有一个不成立,则它不是树。否则,它就是一棵树。