File tree 1 file changed +34
-0
lines changed
solution/0101.Symmetric Tree
1 file changed +34
-0
lines changed Original file line number Diff line number Diff line change
1
+ /**
2
+ * Definition for a binary tree node.
3
+ * public class TreeNode {
4
+ * int val;
5
+ * TreeNode left;
6
+ * TreeNode right;
7
+ * TreeNode(int x) { val = x; }
8
+ * }
9
+ */
10
+ import java .util .*;
11
+
12
+ class Solution {
13
+ public boolean isSymmetric (TreeNode root ) {
14
+ if (root == null ) return true ;
15
+ LinkedList <TreeNode > queueA = new LinkedList <>();
16
+ LinkedList <TreeNode > queueB = new LinkedList <>();
17
+ queueA .addLast (root );
18
+ queueB .addLast (root );
19
+ while (!queueA .isEmpty () && !queueB .isEmpty ()) {
20
+ TreeNode popA = queueA .pollFirst ();
21
+ TreeNode popB = queueB .pollFirst ();
22
+ if (popA == null && popB == null ) continue ;
23
+ if (popA == null || popB == null ) return false ;
24
+
25
+ if (popA .val != popB .val ) return false ;
26
+ queueA .addLast (popA .left );
27
+ queueA .addLast (popA .right );
28
+
29
+ queueB .addLast (popB .right );
30
+ queueB .addLast (popB .left );
31
+ }
32
+ return queueA .isEmpty () && queueB .isEmpty ();
33
+ }
34
+ }
You can’t perform that action at this time.
0 commit comments