代码之家  ›  专栏  ›  技术社区  ›  Tom

非二叉树能按顺序转换吗?

  •  11
  • Tom  · 技术社区  · 14 年前

    我们正在处理一个最相似的邻域算法。算法的一部分涉及在树上按顺序搜索。

    问题是,直到现在,我们还不能使这棵树是二叉树。

    对于非二进制树是否有模拟到有序遍历。特别是,我认为存在这样的情况,只需从左到右遍历节点(并且只处理一次父节点?”)

    有什么想法吗?

    更新

    这棵树将在每个节点中有一个由n个对象组成的小图。每个节点将有N个子节点(图中每个元素1个),每个子节点将是另一个图。所以它是一种B树,没有所有的溢出-下溢机制。所以我猜最相似的顺序遍历会类似于btree的顺序遍历?

    事先谢谢。

    2 回复  |  直到 14 年前
        1
  •  9
  •   Svante    14 年前

    是的,但您需要定义顺序。post和pre-order是相同的,但是inorder定义了分支如何与节点进行比较。

        2
  •  0
  •   Svante    14 年前

    对于除二叉树之外的树,没有简单的顺序模拟(实际上,顺序是从二叉树中获取排序元素的一种方法)。

    你可以在《计算机编程艺术》中找到更多细节,作者是Knuth,第1卷,第336页。

    如果广度优先搜索可以满足您的目的,那么您可以使用它。