using System.Collections.Generic;
public static void Main()
t.Root = new TreeNode(1);
t.Root.Left = new TreeNode(2);
t.Root.Right = new TreeNode(3);
t.Root.Left.Left = new TreeNode(4);
t.Root.Left.Right = new TreeNode(5);
t2.Root = new TreeNode(1);
t2.Root.Left = new TreeNode(2);
t2.Root.Left.Left = new TreeNode(3);
t3.Root = new TreeNode(1);
t3.Root.Left = new TreeNode(2);
t3.Root.Left.Left = new TreeNode(3);
t3.Root.Left.Left.Left = new TreeNode(3);
t3.Root.Right = new TreeNode(2);
t3.Root.Right.Right = new TreeNode(3);
t3.Root.Right.Right.Right = new TreeNode(3);
Console.WriteLine("T:" + t.Serialize());
Console.WriteLine("T2:" + t2.Serialize());
Console.WriteLine("T3:" + t3.Serialize());
public TreeNode Left = null;
public TreeNode Right = null;
public string Serialize()
Queue<TreeNode> q = new Queue<TreeNode>();
List<string> res = new List<string>();
res.Add(tmp.value.ToString());
return string.Join(",", res);