题目描述
操作给定的二叉树,将其变换为源二叉树的镜像
思路
画图可得:如果根节点下面有子节点的话,就把他们交换位置;比较难的还是一个递归的思想;
代码
  | 
  | 
循环压栈的方法,其实和递归差不多123456789101112131415161718static  public  void  Mirror1(TreeNode treeNode){    Stack<TreeNode> stack = new Stack<>();    stack.push(treeNode);    while (!stack.empty())    {        TreeNode node = stack.pop();        if (node.left!=null&&node.right!=null) {            TreeNode temp = node.left;            node.left=node.right;            node.right=temp;        }        if (node.left!=null)            stack.push(node.left);        if (node.right!=null)            stack.push(node.right);    }}
收获
- 画图会让思路更清晰,先把思路理清楚,然后再敲代码
 - 递归的代码还是比较难以书写的,但是写出来就很容易看懂;