其实就是递归的思想,
解题步骤:
1、特判:如果pRoot为空,返回空
2、交换左右子树
3、把pRoot的左子树放到Mirror中镜像一下
4、把pRoot的右子树放到Mirror中镜像一下
5、返回根节点root
3、把pRoot的左子树放到Mirror中镜像一下
4、把pRoot的右子树放到Mirror中镜像一下
5、返回根节点root
class Solution:
def Mirror(self , pRoot ):
# write code here
if pRoot == None:
return pRoot
else:
pRoot.left, pRoot.right = pRoot.right, pRoot.left #注意python里面交换值不需要找一个中介容器,可以直接通过一行代码等号赋值的行为来交换值
self.Mirror(pRoot.left)
self.Mirror(pRoot.right)
return pRoot
def Mirror(self , pRoot ):
# write code here
if pRoot == None:
return pRoot
else:
pRoot.left, pRoot.right = pRoot.right, pRoot.left #注意python里面交换值不需要找一个中介容器,可以直接通过一行代码等号赋值的行为来交换值
self.Mirror(pRoot.left)
self.Mirror(pRoot.right)
return pRoot