Cover image for Classic 150 Interview Questions P226 Invert Binary Tree

Classic 150 Interview Questions P226 Invert Binary Tree


Timeline

Timeline

2025-10-23

init

Preorder traversal

Problem:

Preorder traversal

1234567891011121314151617
#include <algorithm>class Solution {    public:	TreeNode *invertTree(TreeNode *root)	{		if (root == nullptr) {			return nullptr;		}		if (root->left == nullptr && root->right == nullptr) {			return root;		}		std::swap(root->left, root->right);		invertTree(root->left);		invertTree(root->right);		return root;	}};

leetcode hot 100 rewrite

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
/** * Definition for a binary tree node. * struct TreeNode { *     int val; *     TreeNode *left; *     TreeNode *right; *     TreeNode() : val(0), left(nullptr), right(nullptr) {} *     TreeNode(int x) : val(x), left(nullptr), right(nullptr) {} *     TreeNode(int x, TreeNode *left, TreeNode *right) : val(x), left(left), right(right) {} * }; */struct TreeNode {        int val;        TreeNode *left;        TreeNode *right;        TreeNode()                : val(0)                , left(nullptr)                , right(nullptr)        {        }        TreeNode(int x)                : val(x)                , left(nullptr)                , right(nullptr)        {        }        TreeNode(int x, TreeNode *left, TreeNode *right)                : val(x)                , left(left)                , right(right)        {        }};#include <algorithm>class Solution {    public:        TreeNode *invertTree(TreeNode *root)        {                if (root == nullptr)                        return nullptr;                root->left = invertTree(root->left);                root->right = invertTree(root->right);                std::swap(root->left, root->right);                return root;        }};
Loading comments…