Loading

剑指offer[18]——二叉树的镜像

题目描述

操作给定的二叉树,将其变换为源二叉树的镜像。

输入描述:

二叉树的镜像定义:源二叉树 
    	    8
    	   /  \
    	  6   10
    	 / \  / \
    	5  7 9 11
    	镜像二叉树
    	    8
    	   /  \
    	  10   6
    	 / \  / \
    	11 9 7  5

这道题目的思路其实很简单,我们只要递归遍历源二叉树,然后交换节点的左右子树,直到遍历结束即可,过程请看下面的图示:

/* function TreeNode(x) {
    this.val = x;
    this.left = null;
    this.right = null;
} */
function Mirror(root)
{
    function change(head){
        if(!head){return false;}
        let temp = head.left;
        head.left = head.right;
        head.right = temp;
        change(head.left);
        change(head.right);
    }
    change(root);
    return root;
}
posted @ 2020-03-12 14:49  Jacob是我了  阅读(87)  评论(0编辑  收藏  举报