예제 #1
0
 public void AddEdgeTo(Node node)
 {
     if (node.Graph != Graph)
     {
         throw new ArgumentException();
     }
     if (Nodes.Contains(node))
     {
         return;
     }
     Nodes.Add(node);
     Nodeflags.Add(false);
     node.Nodes.Add(this);
     node.Nodeflags.Add(false);
 }
예제 #2
0
 public bool RemoveEdgeTo(Node node)
 {
     if (node.Graph != Graph)
     {
         throw new ArgumentException();
     }
     if (!Nodes.Contains(node))
     {
         return(false);
     }
     Nodeflags.RemoveAt(Nodes.IndexOf(node));
     Nodes.Remove(node);
     node.Nodeflags.RemoveAt(node.Nodes.IndexOf(this));
     node.Nodes.Remove(this);
     return(true);
 }