Skip to content

Commit 2243747

Browse files
committed
middle level order of tree
1 parent a9f4ae3 commit 2243747

File tree

1 file changed

+36
-0
lines changed

1 file changed

+36
-0
lines changed
Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
'use strict';
2+
class Node {
3+
constructor(data) {
4+
this.data = data;
5+
this.leftNode = this.rightNode = null;
6+
}
7+
}
8+
9+
function printMiddleLevel(slowPointer, fastPointer) {
10+
if (slowPointer == null || fastPointer == null) return;
11+
if ((fastPointer.leftNode == null && fastPointer.rightNode == null)) {
12+
console.log(slowPointer.data);
13+
return;
14+
}
15+
printMiddleLevel(slowPointer.leftNode, fastPointer.leftNode.leftNode);
16+
printMiddleLevel(slowPointer.rightNode, fastPointer.rightNode.rightNode);
17+
18+
}
19+
20+
//level - 1
21+
let tree = new Node(1);
22+
// level - 2
23+
tree.leftNode = new Node(2);
24+
tree.rightNode = new Node(3);
25+
// level - 3
26+
tree.leftNode.leftNode = new Node(4);
27+
tree.leftNode.rightNode = new Node(5);
28+
tree.rightNode.leftNode = new Node(6);
29+
tree.rightNode.rightNode = new Node(7);
30+
// 1
31+
// / \
32+
// 2 3
33+
// / \ / \
34+
// 4 5 6 7
35+
console.log('Middle Level Order');
36+
printMiddleLevel(tree, tree);

0 commit comments

Comments
 (0)