Ejemplo n.º 1
0
        public Node[] constructBasicBoard()
        {
            Node[] nodes = new Node[5];
            for (int i = 0; i < nodes.GetLength(0); i++)
            {
                nodes[i] = new Node(i);
            }
            nodes[0].addEdge(nodes[2], TransportType.taxi);
            nodes[0].addEdge(nodes[3], TransportType.taxi);
            nodes[0].addEdge(nodes[4], TransportType.taxi);

            nodes[1].addEdge(nodes[2], TransportType.taxi);
            nodes[1].addEdge(nodes[4], TransportType.taxi);

            nodes[2].addEdge(nodes[0], TransportType.taxi);
            nodes[2].addEdge(nodes[1], TransportType.taxi);
            nodes[2].addEdge(nodes[4], TransportType.taxi);

            nodes[3].addEdge(nodes[0], TransportType.taxi);
            nodes[3].addEdge(nodes[4], TransportType.taxi);

            nodes[4].addEdge(nodes[0], TransportType.taxi);
            nodes[4].addEdge(nodes[1], TransportType.taxi);
            nodes[4].addEdge(nodes[2], TransportType.taxi);
            nodes[4].addEdge(nodes[3], TransportType.taxi);

            nodes[0].addEdge(nodes[1], TransportType.bus);
            nodes[1].addEdge(nodes[0], TransportType.bus);

            nodes[0].addEdge(nodes[3], TransportType.bus);
            nodes[3].addEdge(nodes[0], TransportType.bus);

            nodes[1].addEdge(nodes[3], TransportType.bus);
            nodes[3].addEdge(nodes[1], TransportType.bus);

            nodes[0].addEdge(nodes[2], TransportType.underground);
            nodes[2].addEdge(nodes[0], TransportType.underground);

            nodes[2].addEdge(nodes[3], TransportType.underground);
            nodes[3].addEdge(nodes[2], TransportType.underground);

            return(nodes);
        }
Ejemplo n.º 2
0
 public Dictionary<int, List<HashSet<Node>>> initializeEdgeMap(Node[] nodes)
 {
     Dictionary<int, List<HashSet<Node>>> edgeMap = new Dictionary<int, List<HashSet<Node>>>();
     for(int i = 0; i < nodes.GetLength(0); i++){
         HashSet<Node> edgeSet1 = new HashSet<Node>();
         HashSet<Node> edgeSet2 = new HashSet<Node>();
         HashSet<Node> edgeSet3 = new HashSet<Node>();
         List<HashSet<Node>> edgeList = new List<HashSet<Node>>();
         edgeList.Add(edgeSet1);	//taxi
         edgeList.Add(edgeSet2);	//bus
         edgeList.Add(edgeSet3);	//underground
         edgeMap.Add(i, edgeList);
     }
     return edgeMap;
 }
Ejemplo n.º 3
0
        public Node[] constructBasicBoard()
        {
            Node[] nodes = new Node[5];
            for(int i = 0; i < nodes.GetLength(0); i++){
                nodes[i] = new Node(i);
            }
            nodes[0].addEdge(nodes[2], TransportType.taxi);
            nodes[0].addEdge(nodes[3], TransportType.taxi);
            nodes[0].addEdge(nodes[4], TransportType.taxi);

            nodes[1].addEdge(nodes[2], TransportType.taxi);
            nodes[1].addEdge(nodes[4], TransportType.taxi);

            nodes[2].addEdge(nodes[0], TransportType.taxi);
            nodes[2].addEdge(nodes[1], TransportType.taxi);
            nodes[2].addEdge(nodes[4], TransportType.taxi);

            nodes[3].addEdge(nodes[0], TransportType.taxi);
            nodes[3].addEdge(nodes[4], TransportType.taxi);

            nodes[4].addEdge(nodes[0], TransportType.taxi);
            nodes[4].addEdge(nodes[1], TransportType.taxi);
            nodes[4].addEdge(nodes[2], TransportType.taxi);
            nodes[4].addEdge(nodes[3], TransportType.taxi);

            nodes[0].addEdge(nodes[1], TransportType.bus);
            nodes[1].addEdge(nodes[0], TransportType.bus);

            nodes[0].addEdge(nodes[3], TransportType.bus);
            nodes[3].addEdge(nodes[0], TransportType.bus);

            nodes[1].addEdge(nodes[3], TransportType.bus);
            nodes[3].addEdge(nodes[1], TransportType.bus);

            nodes[0].addEdge(nodes[2], TransportType.underground);
            nodes[2].addEdge(nodes[0], TransportType.underground);

            nodes[2].addEdge(nodes[3], TransportType.underground);
            nodes[3].addEdge(nodes[2], TransportType.underground);

            return nodes;
        }