Tipp für Ein-/Ausgabe für Dijkstra

Binary.Coder

Aktives Mitglied
Hallo zusammen,

mein Dijkstra Algorithmus funktioniert nun.
Allerdings gehen alle Eingaben direkt in den Quelltext und alle Ausgaben über die Konsole.

Die festzulegenden Parameter lauten dabei:

Code:
       Knoten v0 = new Knoten("A");
       Knoten v1 = new Knoten("B");
       Knoten v2 = new Knoten("C");
       Knoten v3 = new Knoten("D");
       Knoten v4 = new Knoten("E");
       Knoten v5 = new Knoten("F");
       Knoten v6 = new Knoten("G");
       Knoten v7 = new Knoten("H");
       Knoten v8 = new Knoten("I");
       Knoten v9 = new Knoten("J");
       
       Knoten start = v1;
       
       
       v0.nachbarn = new Kante[]{new Kante(v2, 2.0)};
       v1.nachbarn = new Kante[]{new Kante(v0, 3.0),
                                 new Kante(v2, 4.0),
                                 new Kante(v4, 2.0),
                                 new Kante(v3, 1.0),};
       v2.nachbarn = new Kante[]{new Kante(v2, 0.0)}; //Test
       v3.nachbarn = new Kante[]{new Kante(v0, 2.0),
                                 new Kante(v5, 3.0),};
       v4.nachbarn = new Kante[]{new Kante(v6, 4.0),
                                 new Kante(v7, 2.0)};
       v5.nachbarn = new Kante[]{new Kante(v4, 3.0)};
       v6.nachbarn = new Kante[]{new Kante(v8, 1.0),
                                 new Kante(v9, 5.0)};
       v7.nachbarn = new Kante[]{new Kante(v5, 1.0)};
       v8.nachbarn = new Kante[]{new Kante(v9, 1.0)};
       v9.nachbarn = new Kante[]{new Kante(v4, 2.0),
                                 new Kante(v7, 3.0)};

Ich habe leider kaum Erfahrungen in GUI und würde mich sehr über Tipps freuen!

Vielen Dank und besten Gruß
Binary
 
Mttels Breitensuche oder Tiefensuche kannst du alle Knoten durchlaufen.

Und dann ist ein Knoten ein Kreis und eine Kante ein Strich.

Es gibt Frameworks, die das Zeichenn für dich übernehmen.

Bei google findet man unendlich Suchtreffer dafür, weil die Graphentheorie großer Bestandteil der Informatik ist.

Gruß,

Martin
 
Oder du benutzt Dot zur Graphischen Ausgabe. Das dürfte vermutlich die einfachste Variante sein. Einfach mal nach GraphViz suchen, dort gibts auch tutorials. Ist allerdings keine Gui, sondern ein eigenes Programm das .dot Dateien visualisiert.

Wenns allerdings selbst programmiert sein muss, nujo, java Frameworks suchen.
 
Sorry aber jemand noch eine Idee?
Ich komme einfach nicht weiter 🙁
Brauche irgendetwas, was folgende Felder befüllen kann:
Knoten v0 = new Knoten("A");
v0.nachbarn = new Kante[] { new Kante(v2, 2.0) };

Also ich bezweifle langsam, dass ich die Eingabe mit einem Graphen gelöst kriege, deshalb bin ich über jeden Tipp dankbar.
 
Dann überleg dir welche Eingaben du brauchst:
- Knoten müssen angelegt werden können.
Da musst du nur einen String eingeben lassen.
- Kanten müssen angelegt werden können.
Eine Kante besteht aus 2 Knoten, einem Gewicht (und evtl. einer Richtung).

Fang zuerst mit dem Anlegen der Knoten an, danach machst du die Kanten.
Tutorials wie man GUIs erstellt findet google.
 

Zurück
Oben