public static void Main5(string[] args) { // graph search var _g1 = new UndirectedGraph(); _g1.AddLine("1 2 3"); _g1.AddLine("2 1 3 4"); _g1.AddLine("3 1 2 4"); _g1.AddLine("4 2 3"); new BFSearch().DoBreadthFirstSearch(_g1, _g1._vertices[0]); new DFSearch().DoDepthFirstSearch(_g1, _g1._vertices[0]); }
public static void Main4(string[] args) { var _g1 = new UndirectedGraph(); _g1.AddLine("1 2 3"); _g1.AddLine("2 1 3 4"); _g1.AddLine("3 1 2 4"); _g1.AddLine("4 2 3"); new BFSearch().DoBreadthFirstSearch(_g1, _g1._vertices[0]); new DFSearch().DoDepthFirstSearch(_g1, _g1._vertices[0]); Console.WriteLine("Min Cut [{0}]", _g1.FindMinCut()); //var _g2 = new UndirectedGraph2(); //_g2.AddLine("1 2 3"); //_g2.AddLine("2 1 3 4"); //_g2.AddLine("3 1 2 4"); //_g2.AddLine("4 2 3"); //Console.WriteLine("Min Cut [{0}]", _g2.FindMinCut()); //var _g3 = new UndirectedGraph2(); //_g3.AddLine("1 2 3 4"); //_g3.AddLine("2 1 3 4 5"); //_g3.AddLine("3 1 2 4"); //_g3.AddLine("4 3 1 2 7"); //_g3.AddLine("5 2 6 8 7"); //_g3.AddLine("6 5 7 8"); //_g3.AddLine("7 4 5 6 8"); //_g3.AddLine("8 7 5 6"); //Console.WriteLine("Min Cut [{0}]", _g3.FindMinCut()); var _g4 = new UndirectedGraph(); var _lines = File.ReadAllLines("kargerMinCut.txt"); foreach (var _l in _lines) { _g4.AddLine(_l); } new BFSearch().DoBreadthFirstSearchWithDistance(_g4, _g4._vertices[0]); new DFSearch().DoDepthFirstSearch(_g4, _g4._vertices[0]); Console.WriteLine("Min Cut [{0}]", _g4.FindMinCut()); }