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
}
运行结果

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