美文网首页
236. 二叉树的最近公共祖先

236. 二叉树的最近公共祖先

作者: 邦_ | 来源:发表于2022-07-11 14:57 被阅读0次

递归其实很迷的在于。你不知道他在哪做的判断处理
其实判断处理在第一行= =。。


 func lowestCommonAncestor(_ root: TreeNode?, _ p: TreeNode?, _ q: TreeNode?) -> TreeNode? {
        if root == nil || root === p ||  root === q {
            return root
        }
      
        let left = lowestCommonAncestor(root?.left, p, q)
        let right = lowestCommonAncestor(root?.right, p, q)
        if (left != nil) && (right != nil) {
            return root
        }
        return left == nil ? right : left
    
    }




相关文章

网友评论

      本文标题:236. 二叉树的最近公共祖先

      本文链接:https://www.haomeiwen.com/subject/ajspbrtx.html