Leetcode—865. 具有所有最深节点的最小子树【中等】

2025每日刷题(236)

Leetcode---865. 具有所有最深节点的最小子树

实现代码

go 复制代码
/**
 * Definition for a binary tree node.
 * type TreeNode struct {
 *     Val int
 *     Left *TreeNode
 *     Right *TreeNode
 * }
 */
func subtreeWithAllDeepest(root *TreeNode) *TreeNode {
    type pair struct {
        node *TreeNode
        depth int
    }

    var dfs func(root *TreeNode) pair
    dfs = func(root *TreeNode) pair {
        if root == nil {
            return pair{nil, 0}
        }

        lt, rt := dfs(root.Left), dfs(root.Right)
        ld, rd := lt.depth, rt.depth

        if(ld > rd) {
            return pair{lt.node, ld + 1}
        } 

        if(ld < rd) {
            return pair{rt.node, rd + 1}
        }
        return pair{root, ld + 1}
    }
    return dfs(root).node
}

运行结果

之后我会持续更新,如果喜欢我的文章,请记得一键三连哦,点赞关注收藏,你的每一个赞每一份关注每一次收藏都将是我前进路上的无限动力 !!!↖(▔▽▔)↗感谢支持!

相关推荐
云浪1 小时前
Go 并发实战:从零实现一个高并发安全的任务调度器
javascript·后端·go
苏三的开发日记1 小时前
Docker 启动顺序优化(CentOS / Ubuntu)
后端
高频因子挖掘机3 小时前
同一交易日出现重复 K 线:去重前先确认时间、来源和粒度
后端·github·api
feely02084 小时前
《我写了 31 个静态扫描插件,踩了 7 个「假绿」》
后端
橙子家5 小时前
参数校验类异常(Argument Exception)【C# Exception 详解系列一】
后端
掘金挖土5 小时前
前端手摸手跑路之 AI 应用开发(九)
前端·后端
全栈弄潮儿5 小时前
Python实战第8期:函数
后端·python·编程语言
码事漫谈6 小时前
你让 AI “尽力做”,它反而可能做不好
后端
孟健6 小时前
LLM API 安全防线:从 OpenCode 盗刷事件到 LiteLLM 多模型容灾实操
人工智能·后端·架构