Title

# #树#递归#二叉树的镜像

/**
* Definition for a binary tree node.
* public class TreeNode {
*     int val;
*     TreeNode left;
*     TreeNode right;
*     TreeNode(int x) { val = x; }
* }
*/
class Solution {
public TreeNode mirrorTree(TreeNode root) {
return mirror(root);
}
TreeNode mirror(TreeNode root) {
if(root == null) return root;
TreeNode temp = root.left;
root.left =  root.right;
root.right = temp;
mirror(root.left);
mirror(root.right);
return root;

}
}

/**
* Definition for a binary tree node.
* public class TreeNode {
*     int val;
*     TreeNode left;
*     TreeNode right;
*     TreeNode(int x) { val = x; }
* }
*/
class Solution {
public TreeNode mirrorTree(TreeNode root) {
if(root == null) return root;
q.push(root);
TreeNode temp = null;
while(q.isEmpty() == false) {
TreeNode parent = q.poll();
temp  = parent.left;
parent.left = parent.right;
parent.right = temp;
if(parent.left!=null) {
q.offer(parent.left);
}
if(parent.right!=null) {
q.offer(parent.right);
}
}
return root;

}

}


posted @ 2020-07-15 17:58  .geek  阅读(111)  评论(0编辑  收藏  举报