Ich implementiere einige Algorithmen, um mich selbst über Graphen zu unterrichten und wie man damit arbeitet. Was würden Sie empfehlen, ist der beste Weg, das in Java zu tun? Ich dachte etwas in der Art:Java: Wie stellt man Graphen dar?
public class Vertex {
private ArrayList<Vertex> outnodes; //Adjacency list. if I wanted to support edge weight, this would be a hash map.
//methods to manipulate outnodes
}
public class Graph {
private ArrayList<Vertex> nodes;
//algorithms on graphs
}
Aber ich habe im Grunde nur das erfunden. Gibt es einen besseren Weg?
Außerdem möchte ich es in der Lage sein, Variationen auf Vanille Graphen zu unterstützen wie Digraphe, gewichtete Kanten, Multigraphen usw.
Mit was haben Sie begonnen? Ich bereite mich auf einen Test vor, ich habe noch einen Tag Zeit.Ich werde ein Programm für eine kleine Anzahl von Knoten schreiben müssen. Ich habe auch genauso gedacht wie du. –