diff --git a/src/Graph/Graph.java b/src/Graph/Graph.java index 36dd396eb9f74ec4cd0d5699881e0cc507bc67f4..e9fd291c7d1550c3d6bad987eb503712dee57f6b 100644 --- a/src/Graph/Graph.java +++ b/src/Graph/Graph.java @@ -10,40 +10,55 @@ public class Graph { // pour pouvoir stocker un arbre couvrant, en plus du graphe public int order; + public int upperBound; int edgeCardinality; - ArrayList<LinkedList<Edge>> adjacency; - ArrayList<LinkedList<Arc>> inAdjacency; - ArrayList<LinkedList<Arc>> outAdjacency; + ArrayList<LinkedList<Edge>> incidency; + ArrayList<LinkedList<Arc>> inIncidency; + ArrayList<LinkedList<Arc>> outIncidency; public Graph(int upperBound) { - // à remplir + // Au début, upperBound==order + // Ensuite, on pourrait retirer des sommets du graphe. + // Ainsi, on pourrait avoir upperBound > order + // Cette modification de la classe devient nécessaire + // si vous implémentez la contraction d’arêtes + // Autrement, on pourra asssumer que upperBound==order. + + // à compléter } - public boolean isVertex(int index) { - // à remplir + public boolean isVertex(int vertex) { + // à compléter return true; } - public void addVertex(int indexVertex) { - // à remplir + public void addVertex(int vertex) { + // à compléter + } + + public void deleteVertex(int vertex){ + // à compléter } - public void ensureVertex(int indexVertex) { - // à remplir + public void ensureVertex(int vertex) { + // à compléter } public void addArc(Arc arc) { - // à remplir + // à compléter } - public void addEdge(Edge e) { - // à remplir + public void addEdge(Edge edge) { + // à compléter } - public Arc[] outNeighbours(int sommet) { - // à remplir - return outAdjacency.get(sommet).toArray(new Arc[0]); + public Arc[] outEdges(int vertex) { + // à modifier, si nécessaire + + // Pour la prochaine ligne voir + // https://www.baeldung.com/java-collection-toarray-methods + return outIncidency.get(vertex).toArray(new Arc[0]); } } diff --git a/src/Main.java b/src/Main.java index 1078a332ee15c7703ee1849e160cbf8aef2c642a..741f059fd2ade456ac0b73f5449b990ac11b1628 100644 --- a/src/Main.java +++ b/src/Main.java @@ -36,7 +36,7 @@ public class Main { private static Graph chooseFromGraphFamily() { // Parametriser ici cette fonction afin de pouvoir choisir - // quelle classe de graohe utiliser + // quelle classe de graphe utiliser grid = new Grid(1920 / 11, 1080 / 11); Graph graph = grid.graph; diff --git a/src/RandomTreeAlgos/BreadthFirstSearch.java b/src/RandomTreeAlgos/BreadthFirstSearch.java index e2ec5740bf0606f055ed2ba11a8aa0489ed5f230..f357e68d300103370be9327be459548612776519 100644 --- a/src/RandomTreeAlgos/BreadthFirstSearch.java +++ b/src/RandomTreeAlgos/BreadthFirstSearch.java @@ -14,7 +14,7 @@ public class BreadthFirstSearch { BitSet reached; private void push(int vertex) { - for (Arc arc : graph.outNeighbours(vertex)) frontier.offer(arc); + for (Arc arc : graph.outEdges(vertex)) frontier.offer(arc); } private void explore(Arc nextArc) {