simple C solution,6 lines, 15ms,beat 96%

  • 0
    struct TreeNode* lowestCommonAncestor(struct TreeNode* root, struct TreeNode* p, struct TreeNode* q) {
        if(p->val==root->val) return p;
        else if(q->val==root->val) return q;
        else if(p->val>root->val&&q->val>root->val) return lowestCommonAncestor(root->right,p,q);
        else if(p->val<root->val&&q->val<root->val) return lowestCommonAncestor(root->left,p,q);
        else return root;

Log in to reply

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