Esempio n. 1
0
    void Start()
    {
        graph = new GraphMap(maxNodes);
        for (int i = 0; i <= maxNodes; i++)
        {
            graph.AddNode(i.ToString());
        }

        graph.AddUndirectedEdge(11, 6, 1);
        graph.AddUndirectedEdge(0, 9, 1);
        graph.AddUndirectedEdge(1, 2, 1);
        graph.AddUndirectedEdge(0, 1, 1);
        graph.AddUndirectedEdge(10, 1, 1);
        graph.AddUndirectedEdge(11, 5, 1);
        graph.AddUndirectedEdge(2, 3, 1);
        graph.AddUndirectedEdge(4, 5, 1);
        graph.AddUndirectedEdge(8, 9, 1);
        graph.AddUndirectedEdge(6, 7, 1);
        graph.AddUndirectedEdge(7, 8, 1);
        graph.AddUndirectedEdge(0, 6, 1);
        graph.AddUndirectedEdge(3, 4, 1);
        graph.AddUndirectedEdge(0, 2, 1);
        graph.AddUndirectedEdge(11, 7, 1);
        graph.AddUndirectedEdge(0, 8, 1);
        graph.AddUndirectedEdge(0, 4, 1);
        graph.AddUndirectedEdge(9, 10, 1);
        graph.AddUndirectedEdge(0, 5, 1);
        graph.AddUndirectedEdge(0, 7, 1);
        graph.AddUndirectedEdge(0, 3, 1);
        graph.AddUndirectedEdge(0, 10, 1);
        graph.AddUndirectedEdge(5, 6, 1);

        target = graph.SearchForNode(10.ToString());
        start  = graph.SearchForNode(11.ToString());

//		int bfs = BreadthFirstSearch(start, target);
//		Debug.Log ("bfs: " + bfs);
        int dks = Dijkstra(start, target);

        Debug.Log("dikjstra: " + dks);
        Debug.Log(graph.PrintPathRecursive(target, " "));
    }