# class TreeNode: # def __init__(self, x): # self.val = x # self.left = None # self.right = None # # 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 # # # @param root TreeNode类 # @param o1 int整型 # @param o2 int整型 # @return int整型 # class Solution: def lowestCommonAncestor(self , root: TreeNode, o1: int, o2: int) -> int: # write code here # root 为None 或者等于其中一个节点 def dfs(root,o1,o2)->int: if not root: # 如果节点是None 由于树上节点的值是1 1<=n<=10^5 return 0 if root.val==o1 or root.val ==o2: return root.val left =self.lowestCommonAncestor(root.left,o1,o2) right =self.lowestCommonAncestor(root.right,o1,o2) if left==0: return right if right==0: return left return root.val return dfs(root,o1,o2)