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

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

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

定义cur=root,二叉搜索树的最近公共祖先一定介于p和q之间,因此只有在cur同时大于p,q,或者同时小于p,q的时候才需要移动,否则最大祖先就是cur。

class Solution:
    def lowestCommonAncestor(self , root: TreeNode, p: int, q: int) -> int:
        # write code here
        cur = root 
        while (cur.val - p) * (cur.val - q) > 0:
            if cur.val > p:
                cur = cur.left
            else:
                cur = cur.right
        return cur.val
                
全部评论

相关推荐

后来123321:别着急,我学院本大二,投了1100份,两个面试,其中一个还是我去线下招聘会投的简历,有时候这东西也得看运气
无实习如何秋招上岸
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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