235-Lowest Common Ancestor of a Binary Search Tree

题目:二叉排序树最近公共祖先

def lowest_CommonAncestor(root,p,q):
    if p.val <root.val > q.val:
        return lowest_CommonAncestor(root.left,p,q)
    if p.val >root.val <q.val:
        return lowest_CommonAncestor(root.right,p,q)

    return root

注:

采用递归来实现,利用二叉排序树的特点,如果根节点的值比p,q的值大,说明p,q都在根节点的左子树,递归遍历根节点的左子树;根节点的值比p,q值都小,同理,遍历右子树。当p,q的值在根节点两侧,说明此时根节点为p,q的最近公共节点。

原文地址:https://www.cnblogs.com/kingshine007/p/11373062.html