标签:节点 没有 nod strong 代码 temp java roo 交换
难度 easy
翻转一棵二叉树。
示例:
输入:
4
/
2 7
/ \ /
1 3 6 9
输出:
4
/
7 2
/ \ /
9 6 3 1
备注:
这个问题是受到 Max Howell 的 原问题 启发的 :
解题思路:这道题比较简单,就是用递归的方式求解的,如果root是空节点或者没有子节点,那直接返回,否则交换root的左右节点(即使有一个是空的也当作存在),然后分别对左右子节点调用递归函数。
代码 t100 s34 java
class Solution {
public TreeNode invertTree(TreeNode root) {
if(root==null || (root.left==null && root.right==null)) return root;
TreeNode temp = root.left;
root.left = root.right;
root.right = temp;
root.left = invertTree(root.left);
root.right = invertTree(root.right);
return root;
}
}
参考资料
标签:节点 没有 nod strong 代码 temp java roo 交换
原文地址:https://www.cnblogs.com/zhengxch/p/14604738.html