美文网首页数据结构与算法
剑指 Offer 27 二叉树的镜像

剑指 Offer 27 二叉树的镜像

作者: itbird01 | 来源:发表于2021-12-11 07:58 被阅读0次

剑指 Offer 27. 二叉树的镜像

题意:请完成一个函数,输入一个二叉树,该函数输出它的镜像。

解题思路

解法1:
1.分析题意,镜像实际上就是左右对调,就像我们照镜子一样,就是左右对调,也就说,把买个节点的左右子树对调即为结果
2.首先二叉树的遍历方法有前序遍历、中序遍历、后序遍历、层序遍历
3.其次遍历时,去修改每个节点的左右子树,实现三元素对调即可

解题遇到的问题

后续需要总结学习的知识点

##解法1
class Solution {
    TreeNode ansNode = null;
    public TreeNode mirrorTree(TreeNode root) {
        ansNode = root;
        preList(root);
        return ansNode;
    }

    public void preList(TreeNode root) {
        if (root == null) {
            return;
        }
        swapLeftAndRight(root);
        preList(root.left);
        preList(root.right);
    }

    public void swapLeftAndRight(TreeNode root) {
        TreeNode leftNode = root.left;
        TreeNode rightNode = root.right;
        TreeNode tempNode = leftNode;
        leftNode = rightNode;
        rightNode = tempNode;
        root.left = leftNode;
        root.right = rightNode;
    }

    public class TreeNode {
        int val;
        TreeNode left;
        TreeNode right;
        TreeNode(int x) {
            val = x;
        }
    }
}

相关文章

网友评论

    本文标题:剑指 Offer 27 二叉树的镜像

    本文链接:https://www.haomeiwen.com/subject/drgcfrtx.html