题目:
操作给定的二叉树,将其变换为源二叉树的镜像
这个其实还是递归的思想:
我们考虑到 f(root) = f(left)+f(right),在左右子树知道的情况下,是不是交换一下左右子树就可以得到该二叉树的镜像了?
按照这个逻辑:
代码如下:
public class TreeNode {
int val;
TreeNode left;
TreeNode right;
TreeNode(int x) { val = x; }
}
public class 源二叉树的镜像 {
public void Mirror(TreeNode root) {
root = getMirrorTree(root);
}
TreeNode getMirrorTree(TreeNode root){
if(null == root){
return null;
}
TreeNode leftNode = root.left;
TreeNode rightNode = root.right;
root.right = getMirrorTree(leftNode);
root.left = getMirrorTree(rightNode);
return root;
}
}

本文介绍了一种通过递归思想实现二叉树镜像变换的方法。核心逻辑在于交换二叉树的左右子树,利用递归调用完成整个树的镜像变换。代码示例清晰展示了如何将一棵二叉树转换为其镜像。
3060

被折叠的 条评论
为什么被折叠?



