Пример #1
0
 public DirectedGraph(int n)
 {
     Vertices = new DirectedVertex[n + 1];
     for (int i = 1; i <= n; i++)
     {
         Vertices[i] = new DirectedVertex(i);
     }
 }
Пример #2
0
        public void DoDepthFirstSearchRev(DirectedGraph g, DirectedVertex s)
        {
            _reverse_loop_explored[s.Name] = true;

            foreach (var _v in s.ReverseConnectedVertices)
            {
                if (!_reverse_loop_explored[_v.Name])
                {
                    DoDepthFirstSearchRev(g, _v);
                }
            }

            _f[++_t] = s.Name;
        }
Пример #3
0
 public void ReverseConnect(DirectedVertex head)
 {
     ReverseConnectedVertices.Add(head);
 }
Пример #4
0
 public DirectedEdge(DirectedVertex u, DirectedVertex v)
 {
     StartVertex = u;
     EndVertex   = v;
 }
Пример #5
0
        //public DirectedEdge Connect(DirectedVertex head)
        //{
        //    var _e = new DirectedEdge(this, head);
        //    //ConnectedEdges.Add(_e);

        //    return _e;
        //}

        public void Connect(DirectedVertex head)
        {
            ConnectedVertices.Add(head);
        }