invert-binary-tree 1.0.0
Invert Binary Tree
Loading...
Searching...
No Matches
main.cpp
Go to the documentation of this file.
1#include <bits/stdc++.h>
2
3using namespace std;
4
8struct TreeNode
9{
10 int val;
13 TreeNode() : val(0), left(nullptr), right(nullptr) {}
14 TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}
16};
17
19{
20public:
22 {
23 if (root == nullptr)
24 return nullptr;
25 queue<TreeNode*> q;
26 q.push(root);
27 while (!q.empty())
28 {
29 TreeNode* current = q.front();
30 q.pop();
31 TreeNode* tmp = current->left;
32 current->left = current->right;
33 current->right = tmp;
34 if (current->left)
35 q.push(current->left);
36 if (current->right)
37 q.push(current->right);
38 }
39 return root;
40 }
41};
42
43int main()
44{
45
46 return 0;
47}
TreeNode * invertTree(TreeNode *root)
Definition main.cpp:21
int main()
Definition main.cpp:43
Definition for a binary tree node.
Definition main.cpp:9
int val
Definition main.cpp:10
TreeNode * left
Definition main.cpp:11
TreeNode(int x, TreeNode *left, TreeNode *right)
Definition main.cpp:15
TreeNode * right
Definition main.cpp:12
TreeNode(int x)
Definition main.cpp:14
TreeNode()
Definition main.cpp:13