这个帖子顺序森林遍历是否正确?

时间:2018-01-02 19:54:36

标签: algorithm tree traversal postorder

我在了解如何遍历森林后期订单时遇到问题。它的定义是:(source: Data structures using C by Rohit Khurana page 330)

  1. 遍历树后的第一棵树的子树。

  2. 遍历树中的F的剩余树木。

  3. 访问F的第一个树的根节点。

  4. 这里是森林: F forest

    并且书中提到的后序遍历是:

    C F E D B Q P Z Y X A

    但我认为P在错误的地方,正确答案是:

    C F E D B Q Z Y X P A

    我想知道我的答案是否正确,或者该书的答案是否属实,为什么会这样?

    感谢,

1 个答案:

答案 0 :(得分:0)

  1. 访问F。
  2. 的第一个树的根节点

    根据这一说法,书中的答案是正确的。作为最后一个操作访问根节点仅对林的第一个树有效。

    您所建议的行为就好像此声明对森林中的其他树也有效。

    在你的例子中,在输出Q之后,你不输出P而是在A之前输出它。但是,P是F的第二个树的根,而不是第一个。因此,您应该在Q之后输出P,而不是在A之前输出。