235. 二叉搜索树的最近公共祖先

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/lowest-common-ancestor-of-a-binary-search-tree
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。


由于是二叉搜索树,所以可以找准确的分支。


    // 由于是二叉搜索树,所以从上至下遍历时,可以准确的选择分支。
    public TreeNode lowestCommonAncestor(TreeNode root, TreeNode p, TreeNode q) {

        // TreeNode cur= root;
        // while(cur != null) {
        //     if(cur.val < p.val && cur.val < q.val) {
        //         cur = cur.right;
        //     } else if(cur.val > p.val && cur.val > q.val) {
        //         cur = cur.left;
        //     } else {
        //         return cur;
        //     }
        // }
        // return null;

        if(root.val < p.val && root.val < q.val) {
            return lowestCommonAncestor(root.right,p,q);
        } else if(root.val > p.val && root.val > q.val) {
            return lowestCommonAncestor(root.left,p,q);
        } else {
            return root;
        }
        
        
    }
posted @ 2022-02-24 12:10  一颗青菜  阅读(1)  评论(0)    收藏  举报