抱歉,您的浏览器无法访问本站
本页面需要浏览器支持(启用)JavaScript
了解详情 >

给你一棵二叉树的根节点 root ,翻转这棵二叉树,并返回其根节点。


思路

  • 肯定是用递归。刚开始考虑到左右子树存在 nullptr 的情况,不过发现这种情况也包含在正常情况中了,无需特殊考虑。

学习点

代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
class Solution
{
public:
TreeNode *invertTree(TreeNode *root)
{
// 递归终止条件
if (!root)
return root;
// 递归子树
invertTree(root->left);
invertTree(root->right);

TreeNode *tmp_node = root->left;
root->left = root->right;
root->right = tmp_node;

return root;
}
};