力扣 hot100 Day34

226. 翻转二叉树

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

翻转的定义是,对于每个节点,交换它的左右子树

//抄的
class Solution {
public:
    TreeNode* invertTree(TreeNode* root) {
        if(root==nullptr)return nullptr;
        TreeNode* left = invertTree(root->left);
        TreeNode* right = invertTree(root->right);
        root->left = right;
        root->right = left;
        return root;
    }
};

一开始不是很清楚翻转的定义,无从下笔

二叉树经典递归,对于任意节点,只需要处理好当前父子节点就好,这里就是将左右节点进行交换,后面的逻辑继续调用当前函数即可。

你可能感兴趣的:(Hot100,leetcode,算法)