Beispiel #1
0
        static void Main(string[] args)
        {
            //TODO 1: Ucitati datoteku Graph1.txt i proslediti klasi Graph

            List <State>     resenje = new List <State>();
            DepthFirstSearch dfs     = new DepthFirstSearch();
            //BreadthFirstSearch bfs = new BreadthFirstSearch();

            State startState = new State();
            Node  startNode  = instance.graph.Keys.First();

            startState.node = startNode;

            State sp       = startState;
            State solution = dfs.search(sp);

            //ispisuje sadrzaj grafa u konzoli
            //i snima u datoteku
            instance.printGraph();

            if (solution != null)
            {
                resenje = solution.path();
            }

            //TODO 8: Snimiti resenje u tekstualnu datoteku

            // Zadrzava otvorenu konzolu u debug modu
            Console.WriteLine("Press any key to exit.");
            System.Console.ReadKey();
        }
Beispiel #2
0
        static void Main(string[] args)
        {
            string[] linesLinks = System.IO.File.ReadAllLines(@".\..\..\Graphs\Graph.txt");
            string[] linesNodes = System.IO.File.ReadAllLines(@".\..\..\Graphs\Nodes.txt");
            instance = new Graph(linesNodes, linesLinks);

            //ispisuje sadrzaj grafa u konzoli
            instance.printGraph();

            BreadthFirstSearch        bfs  = new BreadthFirstSearch();
            DepthFirstSearch          dfs  = new DepthFirstSearch();
            IterativeDepthFirstSearch idfs = new IterativeDepthFirstSearch();

            State solution = dfs.Search("NS", "NI");
            //State solution = bfs.Search("NS", "NI");
            //State solution = idfs.Search("NS", "NI");

            // TODO 5: ispisati duzinu predjenog puta u konzoli

            List <State> resenje = new List <State>();

            if (solution != null)
            {
                resenje = solution.path();
            }
            double total = 0;

            foreach (State s in resenje)
            {
                total += s.Cost;
            }
            Console.WriteLine("Ukupna predjena duzina: " + total);

            #region ispis i snimanje resenja u datoteku

            Console.WriteLine("Konacno resenje : ");
            string output = "";
            State  last   = resenje.Last();
            foreach (State r in resenje)
            {
                Console.WriteLine(r.Node.ToString());
                output += r.Node.ToString();
                if (!last.Equals(r))
                {
                    output += ",";
                }
            }
            System.IO.File.WriteAllText(@".\..\..\Graphs\Resenje.txt", output);
            #endregion

            // Zadrzava otvorenu konzolu u debug modu
            Console.WriteLine("Press any key to exit.");
            System.Console.ReadKey();
        }
Beispiel #3
0
        static void Main(string[] args)
        {
            //TODO 1: Ucitati datoteku Graph1.txt i proslediti klasi Graph
            string[] lines = File.ReadAllLines(@"./Graphs/Graph1.txt");
            instance = new Graph(lines);

            List <State>     resenje = new List <State>();
            DepthFirstSearch dfs     = new DepthFirstSearch();
            //BreadthFirstSearch bfs = new BreadthFirstSearch();

            State startState = new State();
            Node  startNode  = instance.graph.Keys.First();

            startState.node = startNode;

            State sp       = startState;
            State solution = dfs.search(sp);

            //ispisuje sadrzaj grafa u konzoli
            //i snima u datoteku
            instance.printGraph();

            if (solution != null)
            {
                resenje = solution.path();
                Console.WriteLine(string.Join("->", resenje));
            }

            //TODO 8: Snimiti resenje u tekstualnu datoteku
            List <string> linesOutput = new List <string>();

            foreach (State st in resenje)
            {
                linesOutput.Add(st.node.ToString());
            }
            File.WriteAllLines("Solution.txt", linesOutput);

            // Zadrzava otvorenu konzolu u debug modu
            Console.WriteLine("Press any key to exit.");
            System.Console.ReadKey();
        }