反转二叉树。
解题思路:左右节点互换,然后递归调用即可。
java版本:
public class Solution {
public TreeNode invertTree(TreeNode root) {
if(root==null) {return root;}
TreeNode tmp=invertTree(root.left);
root.left=invertTree(root.right);
root.right=tmp;
return root;
}
}
c++版本:
class Solution {
public:
TreeNode* invertTree(TreeNode* root) {
if(root==NULL)
return NULL;
TreeNode* temp=root->left;
root->left=root->right;
root->right=temp;
root->left=invertTree(root->left);
root->right=invertTree(root->right);
return root;
}
};
本文介绍了如何使用递归方式实现二叉树的反转,并提供了Java和C++版本的代码实现。
306

被折叠的 条评论
为什么被折叠?



