File tree Expand file tree Collapse file tree 2 files changed +23
-0
lines changed
count-complete-tree-nodes Expand file tree Collapse file tree 2 files changed +23
-0
lines changed Original file line number Diff line number Diff line change @@ -10,6 +10,8 @@ leetcode 测试
10
10
11
11
##### 包含的内容如下
12
12
13
+ https://leetcode.cn/problems/count-complete-tree-nodes/
14
+
13
15
https://leetcode.cn/problems/broken-calculator
14
16
15
17
https://leetcode.cn/problems/pairs-with-sum-lcci/
Original file line number Diff line number Diff line change
1
+ import { TreeNode } from "../binary-tree-inorder-traversal/TreeNode.ts" ;
2
+
3
+ export default function countNodes ( root : TreeNode | null ) : number {
4
+ if ( root === null ) return 0 ;
5
+ let left = 0 ,
6
+ right = 0 ;
7
+ let curNode : TreeNode | null = root ;
8
+ while ( curNode !== null ) {
9
+ left ++ ;
10
+ curNode = curNode . left ;
11
+ }
12
+ curNode = root ;
13
+ while ( curNode !== null ) {
14
+ right ++ ;
15
+ curNode = curNode . right ;
16
+ }
17
+ if ( left === right ) {
18
+ return 2 ** left - 1 ;
19
+ }
20
+ return 1 + countNodes ( root . left ) + countNodes ( root . right ) ;
21
+ }
You can’t perform that action at this time.
0 commit comments