预订遍历最小生成树

时间:2016-09-08 22:43:54

标签: algorithm tree minimum-spanning-tree preorder

有没有办法打印MST给出的输出的预先遍历(使用Kruskal或Prim算法)。我有一个混乱,因为输出可能总是或不是二叉树。那么,这里的预订遍历是如何实现的呢?普通的DFS可以完成任务吗?

1 个答案:

答案 0 :(得分:5)

处理这类问题时的主要问题是算法问题中 tree 这个词的含糊不清。有两个主要定义(实际上可能略有不同):

  1. 树是非循环连接(无向)图。
  2. 树基本上是一组节点,每个节点都有一个父节点(一个节点除外,称为节点),并且每个节点的子节点列表都是有序的。
  3. 但是,您必须使用第二个定义来假设 preoder遍历的概念是明确定义的(即唯一的)。

    但是,生成树只是第一个含义的树。特别是,您必须选择一个根节点和一些儿子的顺序。之后,DFS会给你一个preoder遍历。