翻转一棵二叉树。
示例:
输入:
4
/
2 7
/ \ /
1 3 6 9
输出:
4
【二叉树|leetcode 226 翻转二叉树】/
7 2
/ \ /
9 6 3 1
/**
* Definition for a binary tree node.
* public class TreeNode {
*int val;
*TreeNode left;
*TreeNode right;
*TreeNode(int x) { val = x;
}
* }
*/
//不用考虑为左右子树为空的情况,因为左右子树为空的情况也可以当作TreeNode
class Solution {
public TreeNode invertTree(TreeNode root) {
if(root==null) return root;
else{
TreeNode temp=root.left;
root.left=root.right;
root.right=temp;
invertTree(root.left);
invertTree(root.right);
return root;
}
}
}
推荐阅读
- leetcode|LeetCode226翻转二叉树(递归)
- 春招|【Android春招每日一练】(三十二) LeetCode Hot 10题
- 春招|【Android春招每日一练】(三十四) LeetCode Hot 5题+总结(完)
- 数据结构|数据结构(十五)——堆与堆排序及时间复杂度分析
- 笔记|C语言数据结构——二叉树的顺序存储和二叉树的遍历
- 数据结构与算法|【算法】力扣第 266场周赛
- leetcode|今天开始记录自己的力扣之路
- leetcode题解|leetcode#106. 从中序与后序遍历序列构造二叉树
- Python|Python 每日一练 二分查找 搜索旋转排序数组 详解