修复 0236.二叉树的最近公共祖先.md Python3解法

修正语法错误,修复Python语法风格
This commit is contained in:
Wen
2021-09-17 20:21:56 +08:00
parent f46c111d9e
commit c41ce18dbb

View File

@ -264,16 +264,21 @@ class Solution {
## Python ## Python
```python ```python
//递归
class Solution: class Solution:
"""二叉树的最近公共祖先 递归法"""
def lowestCommonAncestor(self, root: 'TreeNode', p: 'TreeNode', q: 'TreeNode') -> 'TreeNode': def lowestCommonAncestor(self, root: 'TreeNode', p: 'TreeNode', q: 'TreeNode') -> 'TreeNode':
if not root or root == p or root == q: return root //找到了节点p或者q或者遇到空节点 if not root or root == p or root == q:
left = self.lowestCommonAncestor(root.left,p,q) // return root
right = self.lowestCommonAncestor(root.right,p,q) //
if left and right: return root //: left和right不为空root就是最近公共节点 left = self.lowestCommonAncestor(root.left, p, q)
elif left and not right: return left //目标节点是通过left返回的 right = self.lowestCommonAncestor(root.right, p, q)
elif not left and right: return right //目标节点是通过right返回的
else: return None //没找到 if left and right:
return root
if left:
return left
return right
``` ```
## Go ## Go