递归或迭代
迭代是新建一个队列,先将根加入队列,再交换根的左右子节点,再将左右子节点加入队列,直到队列为空。
/**
* Definition for a binary tree node.
* public class TreeNode {
* int val;
* TreeNode left;
* TreeNode right;
* TreeNode(int x) { val = x; }
* }
*/
class Solution {
void invert(TreeNode node){
if(node==null){
return ;
}
else{
TreeNode temp=node.left;
node.left=node.right;
node.right=temp;
invert(node.left);
invert(node.right);
}
}
public TreeNode invertTree(TreeNode root) {
invert(root);
return root;
}
}