using
System;
using
System.Collections.Generic;
class
GFG{
class
Node
{
public
int
data;
public
Node left;
public
Node right;
public
Node(
int
val)
{
data = val;
left = right =
null
;
}
};
static
void
PrintAlternate(Node root)
{
Queue<Node> Q =
new
Queue<Node>();
Q.Enqueue(root);
while
(Q.Count != 0)
{
int
N = Q.Count;
for
(
int
i = 0; i < N; i++)
{
Node temp = Q.Peek();
Q.Dequeue();
if
(i % 2 == 0)
{
Console.Write(temp.data +
" "
);
}
if
(temp.left!=
null
)
{
Q.Enqueue(temp.left);
}
if
(temp.right!=
null
)
{
Q.Enqueue(temp.right);
}
}
Console.WriteLine();
}
}
public
static
void
Main(String[] args)
{
Node root;
root =
new
Node(71);
root.left =
new
Node(88);
root.right =
new
Node(99);
root.left.left =
new
Node(4);
root.left.right =
new
Node(5);
root.right.left =
new
Node(6);
root.right.right =
new
Node(7);
root.left.left.left =
new
Node(8);
root.left.left.right =
new
Node(9);
root.left.right.left =
new
Node(10);
root.left.right.right =
new
Node(11);
root.right.left.right =
new
Node(13);
root.right.right.left =
new
Node(14);
PrintAlternate(root);
}
}