Exemple #1
0
 public void AddChild(CustomNode node)
 {
     if (children == null)
     {
         children = new List <CustomNode>();
     }
     children.Add(node);
 }
Exemple #2
0
 static void TranverseTree(CustomNode node)
 {
     if (node is MidNode)
     {
         var mid = node as MidNode;
         Console.WriteLine($"中间节点:{ mid.Name}");
         if (mid.Children != null)
         {
             foreach (var sub in mid.Children)
             {
                 TranverseTree(sub);
             }
         }
     }
     else if (node  is LeafNode)
     {
         var leaf = node as LeafNode;
         Console.WriteLine($"叶节点:{leaf.Name}、{leaf.Value}");
     }
 }