给定一棵二叉树,输出其镜像二叉树。
比较简单的一道递归的题目。不断递归树的左右子树,直到节点是叶子节点为止。子问题的处理方式就是交换左右子树。给出代码。
public void Mirror(TreeNode root) {
mirrorCore(root);
}
public void mirrorCore(TreeNode root) {
if(root == null || (root.left == null && root.right == null)) {
return;
}
TreeNode tmp = root.left;
root.left = root.right;
root.right = tmp;
mirrorCore(root.left);
mirrorCore(root.right);
}