Übung Kürzeste Wege in Graphen

Aus ProgrammingWiki
Archivierte Version vom 2015-11-10T16:19:14+00:00. Aktuelle Version

Inhaltsverzeichnis

Flo Teil

Übung Kürzeste Wege in bewerteten Graphen

Übung 2.1

  • Führen Sie den Dijkstra-Algorithmus per Hand für folgende Graphendarstellung aus.
  • Legen Sie dazu eine Tabelle an.
Darstellung Graph G

Alpreu_Auk1.png

Übung 2.2

  • Implementieren Sie den Floyd-Algorithmus in einer Programmiersprache Ihrer Wahl.
  • Lesen Sie dazu eine Matrix ein (alternativ: im Quelltext hardcoden)
  • Wenden Sie den Algorithmus an.
  • Geben Sie die Ergebnismatrix aus.
  • Um ihren Algorithmus zu testen können Sie hier Eingabematrizen und die korrekte Ausgabematrix generieren.

Übung 2.3

  • Machen Sie sich selbstständig mit verschiedenen Datenstrukturen und ihren Vor-/Nachteilen

für die verschiedenen Algorithmen vertraut. (Bsp. Fibonacci-Heap)

Übung 2.4

  • Machen Sie sich mit weiteren Algorithmen zur Bestimmung des kürzesten Weges vertraut.
  • Welche Charakteristiken und Unterschiede weisen diese auf? (Bsp. A*-Algorithmus, Bellman-Ford-Algorithmus)

Übung 2.5*

  • Fügen Sie die folgende Klassen in ihre IDE ein.
  • Vervollständigen Sie die Klasse DijkstraAlgorithm mithilfe des in Kommentaren angegebenen Pseudocodes.
  • Testen Sie den Algorithmus auf Funktionsfähigkeit mithilfe der folgenden JUnit Test Klasse:

Lösungen

Aufgabe 2.1

Alpreu_Auk1-u.png