【问题标题】:Can somebody explain the logic for inorder tree travesal?有人可以解释中序树遍历的逻辑吗?
【发布时间】:2015-06-25 10:41:33
【问题描述】:

我得到了以下代码的输出,但我没有得到确切的逻辑。 第 3 行(递归 fn 调用)将在到达叶节点时传递值 Null,那么它如何打印数据部分

void Inorder(struct node *node)
{
  if(node!=NULL)
  {
     Inorder(node->left);
     printf("%d",node->data);
     Inorder(node->right);
  }
}

【问题讨论】:

    标签: data-structures inorder


    【解决方案1】:

    如果节点不为空,基本上每次递归调用都会继续。 因此,对叶节点的调用node->left 将不再继续,并且随着递归函数的展开,节点将打印在下一行。

    试运行一个示例并自己验证。

    【讨论】:

      猜你喜欢
      • 2021-08-06
      • 2013-07-13
      • 2011-11-19
      • 1970-01-01
      • 1970-01-01
      • 2011-12-22
      • 1970-01-01
      • 1970-01-01
      • 2021-01-24
      相关资源
      最近更新 更多