Пример #1
0
        private static BipartiteGraph G_minus_e(BipartiteGraph G, Edge e)
        {//YHB: this method find the graph G_minus by deleting given edge-e from the G i.e. given graph
            BipartiteGraph G_minus = G;

            if (G.Contains(G.GetNode(e.FromNode.Value), G.GetNode(e.ToNode.Value)))
            {
                G_minus.RemoveDirectedEdge(G.GetNode(e.FromNode.Value), G.GetNode(e.ToNode.Value));
            }
            else
            {
                G_minus.RemoveDirectedEdge(G.GetNode(e.ToNode.Value), G.GetNode(e.FromNode.Value));
            }


            return(G_minus);
        }
        //YHB: this method find the graph G_minus by deleting given edge-e from the G i.e. given graph
        private static BipartiteGraph BuildGminus(BipartiteGraph G, Edge e)
        {
            BipartiteGraph Gminus = G.Clone();
            GraphNode      from   = G.GetNode(e.FromNode.Value);
            GraphNode      to     = G.GetNode(e.ToNode.Value);

            if (G.Contains(from, to))
            {
                Gminus.RemoveDirectedEdge(from, to);
            }
            else
            {
                Gminus.RemoveDirectedEdge(to, from);
            }


            return(Gminus);
        }