In this Leetcode Invert Binary Tree problem solution, we have given the root of a binary tree, invert the tree, and return its root.
Problem solution in Python.
class Solution: def invertTree(self, root: TreeNode) -> TreeNode: if root == None: return left = root.left right = root.right root.left, root.right = right, left self.invertTree(root.left) self.invertTree(root.right) return root
Problem solution in Java.
class Solution { public TreeNode invertTree(TreeNode root) { if(root == null){ return null; } TreeNode temp = root.left; root.left = root.right; root.right = temp; invertTree(root.left); invertTree(root.right); return root; }
Problem solution in C++.
class Solution { public: TreeNode* invertTree(TreeNode* root) { if(root == NULL) { return NULL; } std::swap(root->left, root->right); TreeNode *l = invertTree(root->left); TreeNode *r = invertTree(root->right); return root; } };
Problem solution in C.
struct TreeNode* invertTree(struct TreeNode* root){ if (root != NULL) { struct TreeNode *tmp; tmp = root->right != NULL ? invertTree(root->right) : root->right; root->right = root->left != NULL ? invertTree(root->left) : root->left; root->left = tmp; } return root; }
0 Comments