Simple Java Solution

  • 2
    public class Solution {
        public TreeNode lowestCommonAncestor(TreeNode root, TreeNode p, TreeNode q) {
            if(root==null || p==null || q==null)
                return null;
            if(root.val==p.val || root.val==q.val)
                return root;
            if(p.val<root.val && q.val<root.val)
                return lowestCommonAncestor(root.left,p,q);
            if(p.val>root.val && q.val>root.val)
                return lowestCommonAncestor(root.right,p,q);
            return root; // assume p and q must exists!

Log in to reply

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