File tree 1 file changed +38
-0
lines changed
1 file changed +38
-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
+ * public int val;
5
+ * public TreeNode left;
6
+ * public TreeNode right;
7
+ * public TreeNode(int val=0, TreeNode left=null, TreeNode right=null) {
8
+ * this.val = val;
9
+ * this.left = left;
10
+ * this.right = right;
11
+ * }
12
+ * }
13
+ */
14
+ public class Solution {
15
+ void getAllLeafNodes ( TreeNode node , List < int > leafNodes ) {
16
+ if ( node == null ) {
17
+ return ;
18
+ }
19
+
20
+ if ( node . left == null && node . right == null ) {
21
+ leafNodes . Add ( node . val ) ;
22
+ }
23
+ else {
24
+ getAllLeafNodes ( node . left , leafNodes ) ;
25
+ getAllLeafNodes ( node . right , leafNodes ) ;
26
+ }
27
+ }
28
+
29
+ public bool LeafSimilar ( TreeNode root1 , TreeNode root2 ) {
30
+ List < int > root1LeafNodes = new List < int > ( ) ;
31
+ List < int > root2LeafNodes = new List < int > ( ) ;
32
+
33
+ getAllLeafNodes ( root1 , root1LeafNodes ) ;
34
+ getAllLeafNodes ( root2 , root2LeafNodes ) ;
35
+
36
+ return root1LeafNodes . SequenceEqual ( root2LeafNodes ) ;
37
+ }
38
+ }
You can’t perform that action at this time.
0 commit comments