Skip to content

Commit 8538d4b

Browse files
committed
Same Tree LC #100
1 parent d8903d3 commit 8538d4b

File tree

1 file changed

+49
-0
lines changed

1 file changed

+49
-0
lines changed

26-LeetCode/05-Check-Two-Binary-Trees-Are-Same-LC-100.js

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,3 +30,52 @@ Input: 1 1
3030
3131
Output: false
3232
*/
33+
34+
/**
35+
* Definition for a binary tree node.
36+
* function TreeNode(val) {
37+
* this.val = val;
38+
* this.left = this.right = null;
39+
* }
40+
*/
41+
/**
42+
* @param {TreeNode} p
43+
* @param {TreeNode} q
44+
* @return {boolean}
45+
*/
46+
var isSameTree = function (p, q) {
47+
var queue1 = [];
48+
var queue2 = [];
49+
50+
queue1.push(p);
51+
queue2.push(q);
52+
53+
while (queue1.length && queue2.length) {
54+
var node1 = queue1.shift();
55+
var node2 = queue2.shift();
56+
var val1;
57+
var val2;
58+
59+
if (node1 === null) {
60+
val1 = null;
61+
} else {
62+
val1 = node1.val;
63+
queue1.push(node1.left);
64+
queue1.push(node1.right);
65+
}
66+
67+
if (node2 === null) {
68+
val2 = null;
69+
} else {
70+
val2 = node2.val;
71+
queue2.push(node2.left);
72+
queue2.push(node2.right);
73+
}
74+
75+
if (val1 !== val2) {
76+
return false;
77+
}
78+
}
79+
80+
return queue1.length === queue2.length;
81+
};

0 commit comments

Comments
 (0)