Skip to content

Commit d4b557d

Browse files
committed
✨ [226] neetcode's
1 parent a6fec4a commit d4b557d

File tree

2 files changed

+48
-51
lines changed

2 files changed

+48
-51
lines changed

226/my_solution.js

+37-34
Original file line numberDiff line numberDiff line change
@@ -11,46 +11,49 @@ class TreeNode {
1111
*/
1212
function invertTree(root) {
1313
if (null === root) return null;
14-
if (null === root.val) return new TreeNode();
1514

16-
const invertNode = (node) => {
17-
if (null === node) return node;
18-
let left = node.left, right = node.right;
15+
let left = root.left, right = root.right;
1916

20-
if (null !== node.left) {
21-
node.right = left;
22-
// node.left = right;
23-
invertNode(node.right);
24-
}
25-
26-
if (null !== node.right) {
27-
node.left = right;
28-
node.right = left;
29-
invertNode(node.left);
30-
}
31-
32-
33-
return node;
17+
if (null !== root.left) {
18+
root.right = left;
19+
// root.left = right;
20+
invertTree(root.right);
3421
}
3522

36-
// while (queue.length > 0) {
37-
// let curr = queue.shift(), left = curr.left, right = curr.right;
38-
//
39-
// if (null !== left) {
40-
// queue.push(left);
41-
// dummy.right = left;
42-
// }
43-
//
44-
// if (null !== right) {
45-
// queue.push(right);
46-
// dummy.left = right;
47-
// }
48-
//
49-
// dummy = dummy;
50-
// }
23+
if (null !== root.right) {
24+
root.left = right;
25+
root.right = left;
26+
invertTree(root.left);
27+
}
5128

52-
return invertNode(root);
29+
return root;
5330
}
31+
// function invertTree(root) {
32+
// if (null === root) return null;
33+
// if (null === root.val) return new TreeNode();
34+
//
35+
// const invertNode = (node) => {
36+
// if (null === node) return node;
37+
// let left = node.left, right = node.right;
38+
//
39+
// if (null !== node.left) {
40+
// node.right = left;
41+
// // node.left = right;
42+
// invertNode(node.right);
43+
// }
44+
//
45+
// if (null !== node.right) {
46+
// node.left = right;
47+
// node.right = left;
48+
// invertNode(node.left);
49+
// }
50+
//
51+
//
52+
// return node;
53+
// }
54+
//
55+
// return invertNode(root);
56+
// }
5457

5558
//[4,2,7,1,3,6,9]
5659
let x =

226/solution.js

+11-17
Original file line numberDiff line numberDiff line change
@@ -11,26 +11,20 @@ class TreeNode {
1111
*/
1212
function invertTree(root) {
1313
if (null === root) return null;
14-
if (null === root.val) return new TreeNode();
1514

16-
const invertNode = (node) => {
17-
if (null === node) return node;
18-
let left = node.left, right = node.right;
15+
let left = root.left, right = root.right;
1916

20-
if (null !== node.left) {
21-
node.right = left;
22-
// node.left = right;
23-
invertNode(node.right);
24-
}
25-
26-
if (null !== node.right) {
27-
node.left = right;
28-
node.right = left;
29-
invertNode(node.left);
30-
}
17+
if (null !== root.left) {
18+
root.right = left;
19+
// root.left = right;
20+
invertTree(root.right);
21+
}
3122

32-
return node;
23+
if (null !== root.right) {
24+
root.left = right;
25+
root.right = left;
26+
invertTree(root.left);
3327
}
3428

35-
return invertNode(root);
29+
return root;
3630
}

0 commit comments

Comments
 (0)