using System.Collections.Generic;
public int Value { get; set; }
public Node Left { get; set; }
public Node Right { get; set; }
public static void Main()
var stack = new Stack<Node>();
public static void Recurse(Stack<Node> stack)
var current = stack.Pop();
Console.WriteLine(current.Value);
if (current.Left != null)
stack.Push(current.Left);
if (current.Right != null)
stack.Push(current.Right);