【问题标题】:How do I go down a binary tree using questions?如何使用问题沿着二叉树向下走?
【发布时间】:2019-10-11 17:16:22
【问题描述】:

我正在尝试建立一个二叉树来执行以下操作:

  • 如果我写 Y,它将打印左孩子。如果我写N,它会 打印正确的孩子。

    UI.println("Is it true: " + node + "(Y/N)");
    
  • 如果只是一个叶子节点,它只会写答案。

    UI.println(node);
    

【问题讨论】:

  • 您在这方面有什么问题?
  • 我只是想弄清楚该怎么做。我是初学者。

标签: java binary-tree


【解决方案1】:

您的问题有点含糊,但通常您按以下方式执行此操作: 编写一个函数,将树中的一个节点作为参数并提出问题。如果节点是叶子,则函数打印节点并返回。否则,它会提出问题,并根据答案递归地在节点的左侧或右侧调用自身。

函数最初以树的根节点作为参数调用。

请注意,对于非常高的树,这种递归方法可能会导致堆栈溢出。因此,如果您希望树很高,您可能希望将递归展开为一个简单的循环。

【讨论】:

    猜你喜欢
    • 2019-07-22
    • 2019-10-17
    • 1970-01-01
    • 2012-08-18
    • 2011-07-24
    • 1970-01-01
    • 2014-10-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多