コード例 #1
0
        void CreateGraphAndRemoveCycles()
        {
            //edges in the graph go from a smaller value to a bigger value
            graph = new BasicGraphOnEdges <IntPair>(constraints, varList.Count + boundsToInt.Count);
            //removing cycles
            var feedbackSet = CycleRemoval <IntPair> .GetFeedbackSet(graph);

            if (feedbackSet != null)
            {
                foreach (var edge in feedbackSet)
                {
                    graph.RemoveEdge(edge as IntPair);
                }
            }
        }