【问题标题】:Given a Binary Tree print all paths that leads to a given sum (s)给定一棵二叉树,打印所有导致给定总和 (s) 的路径
【发布时间】:2016-05-09 06:59:00
【问题描述】:

给定一棵二叉树,打印所有导致给定总和 (s) 的路径。 注意:在这个问题中,总和也可以是左右子树的一部分。 路径不必从根开始。

虽然我参考this 问题寻求帮助。我仍然无法为路径include 左右子树的特殊情况提出解决方案。

如果给定 sum 23 算法应返回上图中突出显示的路径。

【问题讨论】:

  • 两条建议。首先,您解释了您的问题,但没有显示您是如何尝试回答的,请添加此内容。其次,在为算法编写代码之前,您应该确定算法。在浪费时间写代码之前先从理论上解决问题。
  • @Aaron3468 感谢您的建议。这个问题被问到了真正的兴趣。我会更新问题。

标签: algorithm binary-tree tree-traversal


【解决方案1】:

请记住,未来使用该网站的期望是展示您自己解决问题的尝试。特别是,堆栈溢出往往会在没有表现出真正努力的情况下进行核投票、标记和删除任何寻求帮助的尝试。我支持这种倾向,因为大多数刚到这里的人都希望堆栈溢出来为他们编码,而不是支持他们的编码。

继续前进,这是一个非常简单的算法,我真诚地提供它,您是来这里学习的,而不是免费的。

for each node in tree
    for each child node 
        add the child to an existing path and add the path to list of candidates
        if sum(nodes in path) is target sum
            add path to list of solutions
        repeat expansion until no child nodes remain

【讨论】:

    猜你喜欢
    • 2017-08-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-29
    • 1970-01-01
    • 1970-01-01
    • 2018-03-04
    相关资源
    最近更新 更多