226.[LeetCode]Invert Binary Tree

题意:

反转一个二叉树

递归:

class Solution {
public:
    TreeNode* invertTree(TreeNode* root) {
        //如果是NULL,则返回本身
        if(root == NULL) return root;
        //如果左右其中有一个是非空的,则交换左右
        if (root->left != NULL || root->right != NULL) {
            root->left = invertTree(root->left);//递归,交换下面的
            root->right = invertTree(root->right);
            TreeNode* temp = root->left; //temp是用于暂时记录位置的
            root->left = root->right;
            root->right = temp;
        } 
        return root;
    }
};

你可能感兴趣的:(LeetCode)