O(h) JAVA solution with recursion

  • 0
        public TreeNode lowestCommonAncestor(TreeNode root, TreeNode p, TreeNode q) {
            if(root == null)
                return null;
            else if((root.val >= p.val && root.val <=q.val) || (root.val >= q.val && root.val <= p.val))
                return root;
            else if(root.val < p.val && root.val < q.val)
                return lowestCommonAncestor( root.right,  p,  q);
                return lowestCommonAncestor( root.left,  p,  q);

Log in to reply

Looks like your connection to LeetCode Discuss was lost, please wait while we try to reconnect.