File tree 2 files changed +29
-0
lines changed
solution/0100-0199/0101.Symmetric Tree
2 files changed +29
-0
lines changed Original file line number Diff line number Diff line change
1
+ /**
2
+ * Definition for a binary tree node.
3
+ * class TreeNode {
4
+ * val: number
5
+ * left: TreeNode | null
6
+ * right: TreeNode | null
7
+ * constructor(val?: number, left?: TreeNode | null, right?: TreeNode | null) {
8
+ * this.val = (val===undefined ? 0 : val)
9
+ * this.left = (left===undefined ? null : left)
10
+ * this.right = (right===undefined ? null : right)
11
+ * }
12
+ * }
13
+ */
14
+ type TreeNodeOptional = TreeNode | null ;
15
+ const isSame = ( a : TreeNodeOptional , b : TreeNodeOptional ) : boolean => {
16
+ if ( ! a && ! b ) return true ;
17
+ if ( ! a || ! b ) return false ;
18
+ return a . val === b . val && isSame ( a . left , b . right ) && isSame ( a . right , b . left ) ;
19
+ } ;
20
+ var isSymmetric = function ( root : TreeNode | null ) : boolean {
21
+ if ( ! root ) return true ;
22
+ return isSame ( root . left , root . right ) ;
23
+ } ;
Original file line number Diff line number Diff line change
1
+ declare class TreeNode {
2
+ val : number ;
3
+ left : TreeNode | null ;
4
+ right : TreeNode | null ;
5
+ constructor ( val ?: number , left ?: TreeNode | null , right ?: TreeNode | null ) ;
6
+ }
You can’t perform that action at this time.
0 commit comments