Problem:
class Solution {
public:
TreeNode* invertTree(TreeNode* root) {
if(root == NULL)
{
return NULL;
}
TreeNode* temp;
temp = root -> left;
root -> left = root -> right;
root -> right = temp;
invertTree(root -> left);
invertTree(root -> right);
return root;
}
};
Solution:
这是一道基于二叉树的遍历比较简单的问题,使用中序方式遍历二叉树,同时将遍历中的visit()改写为用于交换结点左右孩子的函数即可。