二叉树反转说的就是将二叉树的左子树右子树互换,
如果他们都有孩子的话,那么也递归的左右互换。
所以,二叉树反转的步骤简述为:
1.反转根节点的左子树(递归调用反转函数)
2.反转根节点的右子树(递归调用反转函数)
3.交换根节点的左节点和右节点。
二叉树反转的实例如图所示:初始:反转之后:
代码如下:
public TreeNode invertTree(TreeNode root) {
if(root==null){
return null;
}
invertTree(root.left);
invertTree(root