题目:
Invert a binary tree.
4 / \ 2 7 / \ / \ 1 3 6 9
to
4 / \ 7 2 / \ / \ 9 6 3 1
反转二叉树,左右儿子值交换
代码:
/** * 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 == NULL) return NULL; TreeNode *tmp = root->left; root->left = root->right; root->right = tmp; invertTree(root->left); invertTree(root->right); return root; } };
本文深入探讨了二叉树的反转算法,提供了一种有效的递归方法来交换二叉树节点的左右子树,附带详细的C++实现代码。
617

被折叠的 条评论
为什么被折叠?



