W większości przypadków dobrze jest zamodelować wykres za pomocą listy przyległości. Istnieją prawdopodobnie istniejące ramy do tego, ale jeśli interesujesz się reprezentacją jako ćwiczeniem, zazwyczaj potrzebujesz dwóch rzeczy. Po pierwsze, HashMap zawierający wszystkie twoje węzły, etykieta węzła dla twojego węzła może być kluczem, sam węzeł jest wartością.
Dokumenty interfejsu Java API HashMaps here.
W każdym obiekcie węzła potrzebna jest lista węzłów sąsiadujących z tym węzłem. Najlepiej zrobić to za pomocą tablicy ArrayList, która jest udokumentowana here.
Oto, jak można to zorganizować.
import java.util.Hashmap;
import java.util.ArrayList;
class Node {
String label;
ArrayList<Node> adjacencyList;
}
HashMap<String, Node> graph = new HashMap<String, Node>();
Większość algorytmów którą chcesz uruchomić na wykresie będzie działać dobrze na tej reprezentacji.
Spróbuję, dziękuję bardzo. – user1079226