543 一棵二叉树,返回最长的路径的长度 点击此处返回总目录 687 一棵二叉树,返回最长的同值路径的长度
一、543 一棵二叉树,返回最长的路径的长度
【题目】
【分析】 两点之间的最长路径,都经过根节点么? 不一定。比如: 最长路径不一定经过根节点。但是一定是下面这种形状: 以三角形这个节点为顶点的最长路径为:它左边最低的孩子到它右边最低的孩子的路径,即:左子树高度+右子树高度。 而三角形节点可能出现在任意位置。
【方法】
我们很容易想到如下的递归式子: 整个树的最长的路径=max { 以root为顶点的最长路径的长度, root的左子树的最长路径, root的右子树的最长路径 }
以root点为顶点的最长路径长度就等于:左子树高度+右子树高度。
代码:
结果: |
543、687 二叉树,任意两点之间的路径
最新推荐文章于 2023-06-07 21:32:51 发布