Page 295 - The Definitive Guide to Building Java Robots
P. 295

Preston_5564C07.fm  Page 276  Monday, September 26, 2005  5:38 AM



                 276    CHAPTER 7  ■  NAVIGATION



                                        } else {
                                            for (int k = 0; k < edges.size(); k++) {
                                                Edge e = (Edge) edges.get(k);
                                                if (e.v1.equals(vi) && e.v2.equals(vj))
                                                    adjMatrix[i][j] = e.weight;
                                                if (e.v2.equals(vi) && e.v1.equals(vj))
                                                    adjMatrix[i][j] = e.weight;
                                            }
                                        }
                                    }
                                }


                                return adjMatrix;
                            }


                            public static void main(String[] args) {
                                Dijkstra dijkstra = new Dijkstra();
                                Vertex a = new Vertex("a");
                                dijkstra.addVertex(a);
                                Vertex b = new Vertex("b");
                                dijkstra.addVertex(b);
                                Vertex c = new Vertex("c");
                                dijkstra.addVertex(c);
                                Vertex d = new Vertex("d");
                                dijkstra.addVertex(d);
                                dijkstra.addEdge(new Edge(a, d, 2));
                                dijkstra.addEdge(new Edge(a, b, 2));
                                dijkstra.addEdge(new Edge(a, c, 4));
                                dijkstra.addEdge(new Edge(b, c, 1));
                                dijkstra.getShortestPath(d,c);

                                //System.out.println(d.adjToString(d.getAdj()));
                            }

                            /**
                             * @return Returns the vertices.
                             */
                            public ArrayList getVertices() {
                                return vertices;
                            }
                            /**
                             * @param vertices The vertices to set.
                             */
                            public void setVertices(ArrayList vertices) {
                                this.vertices = vertices;
                            }




                   97022d2480fe4a63cfdfa123a6e70098
   290   291   292   293   294   295   296   297   298   299   300