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

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

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

递归

function lowestCommonAncestor( root ,  p ,  q ) {
  if(root==null)  
    return null;
  // 如果两个值都小于根节点,说明祖先在左子树一侧
  if(p<root.val && q<root.val)
    return lowestCommonAncestor(root.left,p,q);
  // 如果两个值都大于根节点,说明祖先在右子树一侧
  else if(p>root.val && q>root.val)
    return lowestCommonAncestor(root.right,p,q);
  //否则,在两个值中间,或者等于其中一个值
  else
    return root.val
}
module.exports = {
    lowestCommonAncestor : lowestCommonAncestor
};
全部评论

相关推荐

07-28 00:10
已编辑
门头沟学院 算法工程师
码农索隆:这哥们库库在我帖子下评论
点赞 评论 收藏
分享
评论
6
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务