领扣LintCode算法问题答案-1181. 二叉树的直径
发布日期:2021-06-30 17:10:14
浏览次数:3
分类:技术文章
本文共 1698 字,大约阅读时间需要 5 分钟。
领扣LintCode算法问题答案-1181. 二叉树的直径
目录
1181. 二叉树的直径
描述
给定一颗二叉树,您需要计算树的直径长度。 二叉树的直径是树中任意两个节点之间最长路径的长度。 此路径不一定会通过树根。
- 两个节点之间的路径长度由它们之间的边数表示。
样例 1:
给定一棵二叉树 1 / \ 2 3 / \ 4 5 返回3, 这是路径[4,2,1,3] 或者 [5,2,1,3]的长度.
样例 2:
输入:[2,3,#,1]输出:2解释: 2 / 3 /1
题解
/** * Definition of TreeNode: * public class TreeNode { * public int val; * public TreeNode left, right; * public TreeNode(int val) { * this.val = val; * this.left = this.right = null; * } * } */public class Solution { /** * @param root: a root of binary tree * @return: return a integer */ public int diameterOfBinaryTree(TreeNode root) { // write your code here Pointerret = new Pointer<>(0); diameterOfBinaryTree(root, ret); return ret.getV(); } private int diameterOfBinaryTree(TreeNode root, Pointer ret) { // write your code here if (root == null) { return 0; } int left = 0; if (root.left != null) { left = diameterOfBinaryTree(root.left, ret) + 1; } int right = 0; if (root.right != null) { right = diameterOfBinaryTree(root.right, ret) + 1; } if (left + right > ret.getV()) { ret.setV(left + right); } return Math.max(left, right); } class Pointer { private T v; public Pointer(T v) { this.v = v; } public T getV() { return v; } public void setV(T v) { this.v = v; }}}
鸣谢
非常感谢你愿意花时间阅读本文章,本人水平有限,如果有什么说的不对的地方,请指正。
欢迎各位留言讨论,希望小伙伴们都能每天进步一点点。
转载地址:https://le-yi.blog.csdn.net/article/details/108892919 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
哈哈,博客排版真的漂亮呢~
[***.90.31.176]2024年04月19日 07时01分03秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
POJ-3304 Segments(计算几何)
2019-04-30
UVA-11538 Chess Queen(数学)
2019-04-30
UVA-11401 Triangle Counting(数学优化)
2019-04-30
Codeforces Round #369 (Div. 2)
2019-04-30
UVA 11426 GCD - Extreme (II)(欧拉函数)
2019-04-30
HDU-2838 Cow Sorting(树状数组)
2019-04-30
POJ-2299 Ultra-QuickSort(树状数组)(离散化)
2019-04-30
基于SSM的兼职论坛系统的设计与实现
2019-04-30
基于java的图书管理系统的设计与实现
2019-04-30
基于java的SSM框架理财管理系统的设计与实现
2019-04-30
基于java的ssm框架就业信息管理系统的设计
2019-04-30
基于java的ssm框架的旅游网站设计与实现
2019-04-30
基于java的SSM框架的流浪猫救助网站的设计与实现
2019-04-30
基于java的SSM框架的教务关系系统的设计与实现
2019-04-30
别再问我什么是A/B测试了!
2019-04-30
如何用同期群分析模型提升留存?(Tableau实战)
2019-04-30
爱了,吹爆这个高颜值的流程图工具!
2019-04-30
一个数据项目
2019-04-30
基于JAVA_JSP电子书下载系统
2019-04-30