牛客网算法(十八):二叉树的镜像

题目描述

        操作给定的二叉树,将其变换为源二叉树的镜像。
输入描述:

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

题目分析

        通过图可以看出,要想使二叉树变换为源二叉树的镜像,我们可以让每个节点的左右节点互换位置,可以使用递归,要使一个节点的左右节点交换位置,先使该节点的子节点的左右节点交换位置,一直到子节点为空。

Java实现

	public void Mirror(TreeNode root) {
        TreeNode temp = null;
        if(root != null){
            temp = root.left;
            root.left = root.right;
            root.right = temp;
            Mirror(root.left);
            Mirror(root.right);
        }
    }
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章