首页 > 学院 > 开发设计 > 正文

226. Invert Binary Tree

2019-11-08 00:45:24
字体:
来源:转载
供稿:网友

题目

Invert a binary tree.

4

/ / 2 7 / / / / 1 3 6 9 to 4 / / 7 2 / / / / 9 6 3 1 Trivia: This PRoblem was inspired by this original tweet by Max Howell: Google: 90% of our engineers use the software you wrote (Homebrew), but you can’t invert a binary tree on a whiteboard so fuck off. Subscribe to see which companies asked this question.


思路

比较简单,遍历递归就行了


代码

/** * 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: void reserveNode(TreeNode* node) { if(node == NULL) { return; } TreeNode* tempNode = node->left; node->left = node->right; node->right = tempNode; reserveNode(node->left); reserveNode(node->right); } TreeNode* invertTree(TreeNode* root) { reserveNode(root); return root; }};
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表