递归]leetcode226:翻转二叉树(easy)"/>
[二叉树][递归]leetcode226:翻转二叉树(easy)
题目:
题解:
主要是递归解法,其他方法二刷再写,先把递归玩会玩熟练。
写出递归三部曲,基本就能解题了:
- 1)递归边界
- 2)递归表达式
- 3)返回值
代码如下:
class Solution {
public:TreeNode* invertTree(TreeNode* root) {//1:写出递归边界if(nullptr==root||(nullptr==root->left&&nullptr==root->right))return root;TreeNode *temp=root->left;//保留左节点root->left=root->right;//修改左节点root->right=temp;//修改右节点//2:设计每一级递归表达式root->left=invertTree(root->left);root->right=invertTree(root->right);//3:返回根节点return root;}
};
更多推荐
[二叉树][递归]leetcode226:翻转二叉树(easy)
发布评论