剑指offer-18:二叉树的镜像
可以发现镜像后的树就是将原树的所有节点的左右儿子互换,因此递归遍历原树的所有节点,将每个节点的左右儿子互相交换即可;遍历原树一次 ,因此时间复杂度为O(n)。
具体代码如下:
class Solution {
public:
void Mirror(TreeNode *pRoot) {
if(!pRoot) return;
Mirror(pRoot->left);
Mirror(pRoot->right);
swap(pRoot->left, pRoot->right);
}
};