Advertisement

leetcode二叉树的重要递归题目总结包含详细解题思路

阅读量:

一、LeetCode 236题解分析

题目描述

在给定一棵二叉树的前提下,需要确定其中两个特定节点的最近公共祖先。根据百度百科的定义,最近公共祖先指的是在有根树 T 中,对于两个节点 p 和 q 而言,存在一个节点 x,该节点满足既是 p 与 q 的祖先,并且其深度达到最大值(同时一个节点也可以被视为自身的祖先)。例如,在如下所示的二叉树结构中:root = [3,5,1,6,2,0,8,null,null,7,4]。示例 1:输入为 root = [3,5,1,6,2,0,8,null,null,7,4],p = 5,q = 1,输出结果为 3。说明:节点 5 和节点 1 的最近公共祖先是节点 3。示例 2:输入为 root = [3,5,1,6,2,0,8,null,null,7,4],p = 5,q = 4,输出结果为 5。说明:由于定义允许一个节点作为自身的祖先,因此节点 5 和节点 4 的最近公共祖先是节点 5 自身。

代码实现与验证

(1)网络上流传最广泛且质量最优的代码资源

复制代码
    /** * Definition for a binary tree node.
     * struct TreeNode {
     *     int val;
     *     TreeNode *left;
     * 

全部评论 (0)

还没有任何评论哟~