题目链接:https://leetcode-cn.com/problems/invert-binary-tree/
思路描述:递归法:翻转左右子树,然后对左右子树翻转。LeetCode代码如下:
/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode(int x) : val(x), left(NULL), right(NULL) {} * }; */ class Solution { public: TreeNode* invertTree(TreeNode* root) { if(!root){ return root; } if(!root->left&&!root->right){ return root; } TreeNode* temp=root->left;// root->left=root->right;// root->right=temp; invertTree(root->left); invertTree(root->right); return root; } };