Graph 确定图形是否为树

Graph 确定图形是否为树,graph,tree,Graph,Tree,这个问题的大多数解决方案都建议进行深度/广度优先搜索 但是,我使用以下约束来确定图形是否为树: 所有节点只有一个父节点,但根节点没有父节点 所有节点都已连接:它们有1个父节点或N个子节点 这似乎是不够的。为什么?你能提供一个关于“我的约束”的例子吗?它不是树?在一般无向图中,你无法确定谁是子对象,谁是父对象。父对象和子对象之间的区别是什么?图表没有定向。你怎么知道它是不够的?父节点可能是您标记为更靠近根的节点。一般的图形数据结构通常不会区分父对象和子对象。@LeeNeverGup:我相信你回答了

这个问题的大多数解决方案都建议进行深度/广度优先搜索

但是,我使用以下约束来确定图形是否为树:

  • 所有节点只有一个父节点,但根节点没有父节点
  • 所有节点都已连接:它们有1个父节点或N个子节点
    这似乎是不够的。为什么?你能提供一个关于“我的约束”的例子吗?它不是树?

    在一般无向图中,你无法确定谁是子对象,谁是父对象。

    父对象和子对象之间的区别是什么?图表没有定向。你怎么知道它是不够的?父节点可能是您标记为更靠近根的节点。一般的图形数据结构通常不会区分父对象和子对象。@LeeNeverGup:我相信你回答了我的问题;)。我假设(u,v)有u个父母和v个孩子,事实并非如此。谢谢@的确,这是我的错误。我假设给定的边(u,v)是针对u父和v子的,这是不正确的。我现在明白我的错误了!谢谢;)@LeeNeverGup:给我一个答案,我会接受的。