1.需要用一个栈来保存二叉树的节点
2.另外一个栈保存每次便历的值(获取当前节点的左右,从这个栈用pop出来)
class Solution:
def invertTree(self, root: TreeNode) -> TreeNode:
if not root:
return root
st = []
st.append(root)
while st:
node = st.pop()
node.left, node.right = node.right, node.left #中
if node.right:
st.append(node.right) #右
if node.left:
st.append(node.left) #左
return root
网友评论