(LeetCode OJ) Invert Binary Tree (226]
226. Invert Binary Tree
My Submissions QuestionTotal Accepted: 57653 Total Submissions: 136144 Difficulty: Easy
Invert a binary tree.
4 / \ 2 7 / \ / \1 3 6 9
To
4 / \ 7 2 / \ / \9 6 3 1
Trivia:
This problem was too red 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
Hide Tags Tree
/*** Definition for a binary tree node. * struct TreeNode {* int val; * TreeNode * left; * TreeNode * right; * TreeNode (int x): val (x), left (NULL), right (NULL) {} *}; * // The following are others' algorithms: I was not sure how to write the reverse program based on the given code format. // The backward recursive algorithm: class Solution {public: // reverse the root node and obtain the pointer TreeNode * invertTree (TreeNode * root) of the root node after the flip. {if (root = NULL) {return NULL;} else {// in this way: the bottom layer of the tree is truly swapped first, and then the top layer is reversed TreeNode * newleft = invertTree (root-> right ); treeNode * newright = invertTree (root-> left); root-> left = newleft; root-> right = newright; return root ;}}};