687. 最长同值路径
2022/9/2 23:25:02
本文主要是介绍687. 最长同值路径,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
687. 最长同值路径
给定一个二叉树的 root
,返回 最长的路径的长度 ,这个路径中的 每个节点具有相同值 。 这条路径可以经过也可以不经过根节点。
两个节点之间的路径长度 由它们之间的边数表示。
示例 1:
输入:root = [5,4,5,1,1,5] 输出:2
示例 2:
输入:root = [1,4,5,4,4,5] 输出:2
提示:
- 树的节点数的范围是
[0, 104]
-1000 <= Node.val <= 1000
- 树的深度将不超过
1000
/** * Definition for a binary tree node. * type TreeNode struct { * Val int * Left *TreeNode * Right *TreeNode * } */ func longestUnivaluePath(root *TreeNode) (ans int) { var dfs func(*TreeNode) int dfs = func(node *TreeNode) int { if node == nil { return 0 } left := dfs(node.Left) right := dfs(node.Right) left1 , right1 := 0,0 if node.Left != nil && node.Left.Val == node.Val { left1 = left + 1 } if node.Right != nil && node.Right.Val == node.Val{ right1 = right + 1 } // ans = max(ans,left1+right1) // 返回其子树的最大路径长度 return max(left1,right1) } dfs(root) return ans } func max(a, b int) int { if b > a { return b } return a }
这篇关于687. 最长同值路径的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-05-13TiDB + ES:转转业财系统亿级数据存储优化实践
- 2024-05-09“2024鸿蒙零基础快速实战-仿抖音App开发(ArkTS版)”实战课程已上线
- 2024-05-09聊聊如何通过arthas-tunnel-server来远程管理所有需要arthas监控的应用
- 2024-05-09log4j2这么配就对了
- 2024-05-09nginx修改Content-Type
- 2024-05-09Redis多数据源,看这篇就够了
- 2024-05-09Google Chrome驱动程序 124.0.6367.62(正式版本)去哪下载?
- 2024-05-09有没有大佬知道这种数据应该怎么抓取呀?
- 2024-05-09这种运行结果里的10.100000001,怎么能最快改成10.1?
- 2024-05-09企业src漏洞挖掘-有意思的命令执行