二叉搜索树两个节点的最近公共祖先

思路是 根据二叉搜索树的特性,左子树小于根节点小于右子树,若节点的值都小于两个目标节点,则遍历其右子树;若大于两个目标节点,则遍历其左子树;
但是测试用例只能通过15%,请问大佬是什么原因呢
class Solution {
public:
    /**
     *
     * @param root TreeNode类
     * @param o1 int整型
     * @param o2 int整型
     * @return int整型
     */
    int lowestCommonAncestor(TreeNode* root, int o1, int o2) {
        if(root == nullptr || root->val == o1 || root->val == o2)
            return root->val;
        if(root->val > o1 && root->val> o2)
            return lowestCommonAncestor(root->left,o1,o2);
        else if(root->val <o1 && root->val <o2)
            return lowestCommonAncestor(root->right,o1,o2);
        else
            return root->val;
    }
};


#笔试题目#
全部评论
你这root == nullptr, 还返回root.val不会报NullPointException么
2 回复 分享
发布于 2020-09-20 14:58
leetcode有原题
点赞 回复 分享
发布于 2020-09-20 20:19

相关推荐

10-14 23:01
已编辑
中国地质大学(武汉) Java
CUG芝士圈:虽然是网上的项目,但最好还是包装一下,然后现在大部分公司都在忙校招,十月底、十一月初会好找一些。最后,boss才沟通100家,别焦虑,我去年暑假找第一段实习的时候沟通了500➕才有面试,校友加油
点赞 评论 收藏
分享
与火:这不接? 留子的钱不挣白不挣
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务