Skip to content

Commit 92d9dcf

Browse files
committed
Added Level Order Traversal of Binary Tree
1 parent eacd882 commit 92d9dcf

1 file changed

Lines changed: 58 additions & 0 deletions

File tree

Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
class Node {
2+
int data;
3+
Node left, right;
4+
public Node(int item)
5+
{
6+
data = item;
7+
left = right = null;
8+
}
9+
}
10+
11+
class Main {
12+
Node root;
13+
14+
public Main() { root = null; }
15+
16+
void LevelOrder()
17+
{
18+
int h = height(root);
19+
int i;
20+
for (i=1; i<=h; i++)
21+
CurrentLevel(root, i);
22+
}
23+
int height(Node root) {
24+
if (root == null)
25+
return 0;
26+
else {
27+
int lheight = height(root.left);
28+
int rheight = height(root.right);
29+
if (lheight > rheight)
30+
return(lheight+1);
31+
else return(rheight+1);
32+
}
33+
}
34+
void CurrentLevel (Node root ,int level) {
35+
if (root == null){
36+
return;
37+
}
38+
if (level == 1){
39+
System.out.print(root.data + " ");
40+
}
41+
else if (level > 1) {
42+
CurrentLevel(root.left, level-1);
43+
CurrentLevel(root.right, level-1);
44+
}
45+
}
46+
public static void main(String args[])
47+
{
48+
Main tree = new Main();
49+
tree.root = new Node(1);
50+
tree.root.left = new Node(2);
51+
tree.root.right = new Node(3);
52+
tree.root.left.left = new Node(4);
53+
tree.root.left.right = new Node(5);
54+
55+
tree.LevelOrder();
56+
57+
}
58+
}

0 commit comments

Comments
 (0)