public static void Main()
int numberOfNodes,cnt = 0,val;
numberOfNodes = int.Parse(Console.ReadLine());
while(cnt < numberOfNodes)
val = int.Parse(Console.ReadLine());
public void Insert(int val)
Node node = new Node(val);
if(node.data > curr.data)
if(node.data > curr.data)
public void PrintAscending()
int flagZero = 0, flagOne = 1;
if(curr.left == null || curr.left.flag == flagOne)
if(curr.flag == flagZero )
Console.Write(curr.data+" ");
if(curr.right != null && curr.right.flag == flagZero)
public void PrintDescending()
int flagZero = 0, flagOne = 1;
if(curr.right == null || curr.right.flag == flagOne)
if(curr.flag == flagZero )
Console.Write(curr.data+" ");
if(curr.left != null && curr.left.flag == flagZero)