gpt4 book ai didi

algorithm - 如何在二叉树中找到最长的连续路径

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:33:37 25 4
gpt4 key购买 nike

我在面试中被问到这个问题。考虑一棵二叉树,我们需要打印最长路径的长度,其中每个元素相差 1。

如:

          6
/ \
5 7
/ \ / \
2 4 8 9

答案:5( 4,5,6,7,8 )

如何做到这一点?我开发了一种算法来打印从根到叶的递增路径,但我并没有开发一个跟踪两个子树上的路径的算法。

编辑:修改后需要找回原来的树。

最佳答案

正如@qwertyman 在评论中所建议的那样

  1. 删除所有无效边,即差值大于 1 的边

  2. 现在我们有一个森林,对于每个森林,计算@Filip Kočica 解决方案中给出的直径

  3. 答案是所有森林的最大直径

关于algorithm - 如何在二叉树中找到最长的连续路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45663034/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com