File tree 1 file changed +12
-12
lines changed
1 file changed +12
-12
lines changed Original file line number Diff line number Diff line change @@ -19,31 +19,31 @@ class BinaryTree {
19
19
20
20
breadthFirst ( ) {
21
21
const h = this . getHeight ( this . root )
22
- for ( let i = 1 ; i < = h ; i ++ ) {
22
+ for ( let i = 0 ; i != = h ; i ++ ) {
23
23
this . traverseLevel ( this . root , i )
24
24
}
25
25
return this . traversal
26
26
}
27
27
28
28
// Computing the height of the tree
29
29
getHeight ( node ) {
30
- if ( node == null ) {
30
+ if ( node === null ) {
31
31
return 0
32
- } else {
33
- const lheight = this . getHeight ( node . left )
34
- const rheight = this . getHeight ( node . right )
35
- return lheight > rheight ? lheight + 1 : rheight + 1
36
32
}
33
+ const lheight = this . getHeight ( node . left )
34
+ const rheight = this . getHeight ( node . right )
35
+ return lheight > rheight ? lheight + 1 : rheight + 1
37
36
}
38
37
39
- traverseLevel ( node , level ) {
40
- if ( level === 1 && node !== null ) {
38
+ traverseLevel ( node , levelRemaining ) {
39
+ if ( node === null ) {
40
+ return
41
+ }
42
+ if ( levelRemaining === 0 ) {
41
43
this . traversal . push ( node . data )
42
44
} else {
43
- if ( node !== null ) {
44
- this . traverseLevel ( node . left , level - 1 )
45
- this . traverseLevel ( node . right , level - 1 )
46
- }
45
+ this . traverseLevel ( node . left , levelRemaining - 1 )
46
+ this . traverseLevel ( node . right , levelRemaining - 1 )
47
47
}
48
48
}
49
49
}
You can’t perform that action at this time.
0 commit comments