@@ -42,50 +42,11 @@ class BinaryTree {
42
42
preOrder ( ) {
43
43
return this . traversePreorder ( this . root ) ;
44
44
}
45
- traverseZigZag ( root ) {
46
- let arr = [ ] ;
47
-
48
- let stack1 = [ ] ;
49
- let stack2 = [ ] ;
50
-
51
- stack1 . push ( root ) ;
52
- while ( stack1 . length !== 0 || stack2 . length !== 0 )
53
- {
54
- while ( stack1 . length !== 0 )
55
- {
56
- let top = stack1 [ stack1 . length - 1 ] ;
57
- if ( top == null )
58
- {
59
- stack1 . pop ( ) ;
60
- continue ;
61
- }
62
-
63
- arr . push ( top . value ) ;
64
- stack2 . push ( top . leftChild ) ;
65
- stack2 . push ( top . rightChild ) ;
66
- stack1 . pop ( ) ;
67
- }
68
- while ( stack2 . length !== 0 )
69
- {
70
- let top = stack2 [ stack2 . length - 1 ] ;
71
- if ( top == null )
72
- {
73
- stack2 . pop ( ) ;
74
- continue ;
75
- }
76
- arr . push ( top . value ) ;
77
- stack1 . push ( top . leftChild ) ;
78
- stack1 . push ( top . rightChild ) ;
79
- stack2 . pop ( ) ;
80
- }
81
- }
82
- return arr ;
83
- }
84
45
85
46
}
86
47
87
48
//const bt = new BinaryTree([1, 2, 3, 4, 5, 6]);
88
49
// console.log(bt.root);
89
- //console.log(bt.traverseZigZag (bt.root) );
50
+ //console.log(bt.traversePreorder (bt.root);
90
51
91
52
module . exports = BinaryTree ;
0 commit comments