Programmiersprachen II Vorbesprechung Klausur Prof. Dr. Reiner Güttler Fachbereich GIS HTW.

Slides:



Advertisements
Ähnliche Präsentationen
Algorithmentheorie 08 – Dynamische Programmierung (1)
Advertisements

Man bestimme den „minimalen aufspannenden Baum“ des Graphen.
Eine dynamische Menge, die diese Operationen unterstützt,
Minimum Spanning Tree: MST
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (26-Graphenalgorithmen: Wiederholung und Übung) Prof. Th. Ottmann.
Graphen Ein Graph ist eine Kollektion von Knoten und Kanten. Knoten sind einfache Objekte. Sie haben Namen und können Träger von Werten, Eigenschaften.
Kapitel 6: Klassifizierung von Sortiertechniken
7. Natürliche Binärbäume
R. Der - Vorlesung Algorithmen und Datenstrukturen (Magister)
Kapitel 5. Stacks und Queues
Synonyme: Stapel, Keller, LIFO-Liste usw.
Gliederung Motivation / Grundlagen Sortierverfahren
Sortierverfahren Richard Göbel.
Baumstrukturen Richard Göbel.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (19 - Analyse natürlicher Bäume) Prof. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen Halbzeit: Was haben wir bisher gelernt? Prof. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (27 – Kürzeste Wege) Prof. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (17 – Bäume: Grundlagen und natürliche Suchbäume) Prof. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen 09 - Weitere Sortierverfahren Heapsort-Nachtrag Prof. Th. Ottmann.
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen (21 – Kürzeste Wege) T. Lauer.
Algorithmen und Datenstrukturen
Kapitel 5 Stetigkeit.
EINI-I Einführung in die Informatik für Naturwissenschaftler und Ingenieure I Vorlesung 2 SWS WS 99/00 Gisbert Dittrich FBI Unido
Minimum Spanning Tree: MST
FH-Hof Algorithmen und Datenstrukturen - Einführung Richard Göbel.
Programmiersprachen II Integration verschiedener Datenstrukturen
Vortrag über Graphen Von Jörg Hendricks.
§10 Vektorraum. Definition und Beispiele
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Vorlesung 1 SS 2001 Algorithmus von Dijkstra.
7.1 Externes Suchen Bisherige Algorithmen: geeignet, wenn alle Daten im Hauptspeicher. Große Datenmengen: oft auf externen Speichermedien, z.B. Festplatte.
Effiziente Algorithmen
Effiziente Algorithmen
Diskrete Mathematik II
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen
Effiziente Algorithmen
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen
Effiziente Algorithmen
Black Box Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Einführung in die Informatik für Naturwissenschaftler und Ingenieure
Einführung in die Informatik für Naturwissenschaftler und Ingenieure
Einführung in die Informatik für Naturwissenschaftler und Ingenieure (alias Einführung in die Programmierung) (Vorlesung) Prof. Dr. Günter Rudolph Fakultät.
Einführung in die Programmierung Wintersemester 2013/14 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund.
Kapitel 5: Von Datenstrukturen zu Abstrakten Datentypen
Softwareengineering Graphen und Bäume Teil II
Analyse der Laufzeit von Algorithmen
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Vorlesung der Algorithmus von Floyd Foliendesign:
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Vorlesung Datenstrukturen für den Algorithmus von.
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Vorlesung Suche des kürzesten Weges in einem Netz.
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Vorlesung der Algorithmus von Floyd.
Gliederung der Vorlesung
Lösungshinweise zu den Suchalgorithmen. Der Baum zum Zustandsgraphen GE OBE DUI GE D MH D OB MH DUI E DOBMH OBE DUIGED MH DGE MH EDUI D OBMH DGE MH DUIEE.
Algorithmen und Datenstrukturen Prof. Dr. Ralf Möller Universität zu Lübeck Institut für Informationssysteme Stefan Werner (Übungen) sowie viele Tutoren.
Binärbäume.
Theory of Programming Prof. Dr. W. Reisig Was heißt „Korrektheit“? W. Reisig Workshop Modellierung Hamburg, März 2015.
Programmiersprachen II Fortsetzung Datenstrukturen Hashing Prof. Dr. Reiner Güttler Fachbereich GIS HTW.
Programmiersprachen II Fortsetzung Datenstrukturen Prof. Dr. Reiner Güttler Fachbereich GIS HTW.
Programmiersprachen II Fortsetzung Datenstrukturen Balancierte Bäume 2 Prof. Dr. Reiner Güttler Fachbereich GIS HTW.
Programmiersprachen II Graph_Algorithmen Gewichtete Graphen - Minimum Spanning Tree und shortest path aus Implementierungssicht Prof. Dr. Reiner Güttler.
Programmiersprachen II Fortsetzung Datenstrukturen Balancierte Bäume 3 Prof. Dr. Reiner Güttler Fachbereich GIS HTW.
Programmiersprachen II Fortsetzung Datenstrukturen Balancierte Bäume 1 Prof. Dr. Reiner Güttler Fachbereich GIS HTW.
Programmiersprachen II Fortsetzung Datenstrukturen Einfache Bäume Übung 13 Prof. Dr. Reiner Güttler Fachbereich GIS HTW.
Programmiersprachen II Graph_Algorithmen Einführung Prof. Dr. Reiner Güttler Fachbereich GIS HTW.
Klausur „Diskrete Mathematik II“
Laufzeitverhalten beim Sortieren
3. Die Datenstruktur Graph 3.2 Repräsentation von Graphen
 Präsentation transkript:

Programmiersprachen II Vorbesprechung Klausur Prof. Dr. Reiner Güttler Fachbereich GIS HTW

-2- Prof. Dr. R. Güttler Programmiersprachen 2 Kapitel 4: Graph Algorithmen Einige Prinzipien:  Es wird mehr an Aufgabenstoff angeboten, als auch für sehr gute Studierende in der vorhandenen Zeit erledigt werden kann => damit man nicht in Panik kommt, wenn es mal bei einer Aufgabe „klemmt“  Die verlangten Aufgaben sind eher „schwierig“. Dies wird natürlich bei der Bewertung berücksichtigt und erlaubt es „Flüchtigkeitsfehler“ nicht besonders zu werten.  Es stehen keine Punkte an den Aufgaben => im Interesse der Studierenden (Erläuterungen mündlich)  Qualität und Präzision der Darstellung wird auch bewertet (wenn auch nicht mit zu hohem Gewicht).

-3- Prof. Dr. R. Güttler Programmiersprachen 2 Kapitel 4: Graph Algorithmen Aufgabentypen:  Konstruktive Aufgaben  Beantwortung von Fragen  Bewertung von Aussagen/Behauptungen

-4- Prof. Dr. R. Güttler Programmiersprachen 2 Kapitel 4: Graph Algorithmen Konstruktive Aufgaben Es geht um die Konstruktion von (Teil)-Lösungen für angegebene Probleme aus verschiedenen Phasen der Softwareerstellung  Finden des geeigneten Algorithmus mit den dazu passenden Datenstrukturen (konzeptionell)  Definition von Versionen von Datenstrukturen für bestimmte Situationen (ohne „Ausformulieren“ der Methoden).  „Programmieren“ von Methoden bestimmter Datenstrukturen  In irgendeinem Pseudocode (formalisierte Prosa)  In Java

-5- Prof. Dr. R. Güttler Programmiersprachen 2 Kapitel 4: Graph Algorithmen Beispiel: Analog Übung 12:  Definieren Sie Datenstrukturen (konzeptionelle, d.h. ADT‘s) und ihre Implementierung für eine Auftragsverwaltung. Jeder Auftrag hat eine Nummer und zusätzlich eine Priorität (in Form einer ganzen Zahl). Aufträge gleicher Priorität werden nach dem normalen FIFO-Prinzip behandelt. Neben den Funktionen insert und remove soll es auch eine Funktion changePriority (nr, p) für eine Auftragsnummer nr und eine „neue“ Priorität p für diesen Auftrag geben. Beachten sie, dass dies zur Umorganisation der Reihenfolge führen kann. Ein Auftrag, der durch seine „neue“ Priorität zu anderen mit gleicher Priorität hinzukommt, gilt unter diesen als „letzter“ (im Sinn von FIFO). Begründen sie ihre Wahl für ADT‘s und ihre Implementierung.

-6- Prof. Dr. R. Güttler Programmiersprachen 2 Kapitel 4: Graph Algorithmen Weiteres Beispiel: Gegeben sei die Adjazenzmatrix G der Dimension nxn eines gerichteten ungewichteten Graphen mit n Knoten. a)Definieren sie Pseudocode für eine Methode weg(i,j), die ausgibt, ob es im Graphen eine Verbindung (d.h. eine Folge von Kanten) zwischen den Knoten i und j gibt. b)Definieren sie Java-Code für...

-7- Prof. Dr. R. Güttler Programmiersprachen 2 Kapitel 4: Graph Algorithmen Beantwortung von Fragen: Beispiele  Begründen sie warum (unter welchen Bedingungen) ein Array zur Verwaltung einer sortierten Menge von Items nicht geeignet ist.  Geben sie typische Anwenderanforderungen (z.B. Häufigkeiten oder überhaupt Vorkommen von Operationen) an die gespeicherten Daten an, wann eine Queue als Datenstruktur geeignet und wann sie ungeeignet ist.  Nennen sie Gründe, warum man sich bei Algorithmen häufiger für das worst-case-Verhalten interessiert als für best- oder average-case.

-8- Prof. Dr. R. Güttler Programmiersprachen 2 Kapitel 4: Graph Algorithmen Bewertung von Aussagen/Behauptungen: Beispiele Geben sie jeweils mit ja/nein an, ob nachfolgende Behauptungen richtig sind. Bei den für die Implementierung von Datenbanksystemen benutzten B-Bäumen handelt es sich um eine besondere Variante von binären Bäumen. Eine linked list eignet sich hervorragend, um einen Stack zu implementieren.... Achtung: hier muss es für Fehler Minuspunkte geben!!! Also: leer lassen, wenn man nicht sicher ist.