题解 | #二叉搜索树的最近公共祖先#

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

https://www.nowcoder.com/practice/d9820119321945f588ed6a26f0a6991f

struct TreeNode *find(struct TreeNode* root,int max,int min)
{
    if(min<root->val&&max>root->val) return root;
    else if(min==root->val||max==root->val) return root;
    else if(max<root->val) return find(root->left,max,min);
    else return find(root->right,max,min);
}

int lowestCommonAncestor(struct TreeNode* root, int p, int q ) {
    int max=p>q?p:q,min=p<q?p:q;
    return find(root,max,min)->val;
}

全部评论

相关推荐

26牛牛不会梦到感谢信:羡慕离职了还能吃吗现在就赶回去
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务