Halbzeit: Kurze Wiederholung

Slides:



Advertisements
Ähnliche Präsentationen
Algorithmen und Datenstrukturen
Advertisements

Eine dynamische Menge, die diese Operationen unterstützt,
Prof. Dr. S. Albers Prof.Dr.Th Ottmann
Algorithmen und Komplexität Teil 1: Grundlegende Algorithmen
Algorithmen und Datenstrukturen
Kapitel 6: Klassifizierung von Sortiertechniken
G.Heyer Algorithmen und Datenstrukturen II 1 Algorithmen und Datenstrukturen II Wintersemester 2000 / 2001 Prof. Dr. Gerhard Heyer Institut für Informatik.
3. Kapitel: Komplexität und Komplexitätsklassen
Kapitel 6. Suchverfahren
R. Der - Vorlesung Algorithmen und Datenstrukturen (Magister)
<d,a,s, ,i,s,t, ,e,i,n,e, ,L,i,s,t,e>
Kapitel 3: Listen Lineare Liste: endliche Folge von Elementen eines Grundtyps (n>=0), leere Liste falls n=0 Listenelemente besitzen.
5. Sortier-Algorithmen Vorbemerkungen:
2. Kapitel: Komplexität und Komplexitätsklassen
Synonyme: Stapel, Keller, LIFO-Liste usw.
Sortierverfahren Richard Göbel.
Sortierverfahren Richard Göbel.
Algorithmentheorie 04 –Hashing
Funktionenklassen zur Messung der Komplexität
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen (02 – Funktionenklassen) Prof. Dr. Th. Ottmann.
Algorithmen und Datenstrukturen
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (23 – Sortieren vorsortierter Daten) Prof. Th. Ottmann.
Algorithmen und Datenstrukturen
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen (03 – Verschiedene Algorithmen für dasselbe Problem) Prof. Dr. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (13 – Offenes Hashing) Prof. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (10 - Suchverfahren) T. Lauer.
Prof. Dr. S. Albers Prof. Dr. Th. Ottmann
Algorithmen und Datenstrukturen
Algorithmen und Datenstrukturen
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (19 - Analyse natürlicher Bäume) Prof. Th. Ottmann.
Sortieren vorsortierter Daten
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (02 – Funktionenklassen) Tobias Lauer.
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen (24 – Sortieren vorsortierter Daten) Prof. Th. Ottmann.
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen (03 – Verschiedene Algorithmen für dasselbe Problem) Prof. Dr. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (02 – Funktionenklassen) Prof. Dr. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen Halbzeit: Was haben wir bisher gelernt? Prof. Th. Ottmann.
Algorithmen und Datenstrukturen
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (27 – Kürzeste Wege) Prof. Th. Ottmann.
Informatik II, SS 2008 Algorithmen und Datenstrukturen Vorlesung 9 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik Fakultät.
Informatik II, SS 2008 Algorithmen und Datenstrukturen Vorlesung 4 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik Fakultät.
Anwendungen von Stapeln und Schlangen
Vorlesung Informatik 2 Algorithmen und Datenstrukturen 09 - Weitere Sortierverfahren Heapsort-Nachtrag Prof. Th. Ottmann.
Informatik II, SS 2008 Algorithmen und Datenstrukturen Vorlesung 2 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik Fakultät.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (11-1 –Selbstanordnende lineare Listen) Prof. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (27-Selbstanordnende lineare Listen) Prof. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (15 Hashverfahren: Verkettung der Überläufer) Prof. Th. Ottmann.
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen (21 – Kürzeste Wege) T. Lauer.
Informatik II, SS 2008 Algorithmen und Datenstrukturen Vorlesung 13 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik Fakultät.
Algorithmen und Datenstrukturen
WS 06/07 Algorithmentheorie 01 - Einleitung Prof. Dr. Th. Ottmann Tobias Lauer.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (07 - Skiplisten) Prof. Th. Ottmann.
Informatik II, SS 2008 Algorithmen und Datenstrukturen Vorlesung 12 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik Fakultät.
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen (03 – Verschiedene Algorithmen für dasselbe Problem) Prof. Dr. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (09 - Weitere Sortierverfahren) Prof. Th. Ottmann.
Informatik II, SS 2008 Algorithmen und Datenstrukturen Vorlesung 16 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik Fakultät.
Algorithmen und Datenstrukturen
Informatik II, SS 2008 Algorithmen und Datenstrukturen Vorlesung 6 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik Fakultät.
Universität Dortmund, Lehrstuhl Informatik 1 EINI II Einführung in die Informatik für Naturwissenschaftler und Ingenieure.
EINI-I Einführung in die Informatik für Naturwissenschaftler und Ingenieure I Vorlesung 2 SWS WS 99/00 Gisbert Dittrich FBI Unido
Friedhelm Meyer auf der Heide 1 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Algorithmen und Komplexität Teil 1: Grundlegende.
Algorithmische Geometrie
Sortieralgorithmen Sortieren von Arrays.
Diskrete Mathematik II
Effiziente Algorithmen
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Mehrkriterielle Optimierung mit Metaheuristiken
Algorithmen und Datenstrukturen 1 SS 2002
Analyse der Laufzeit von Algorithmen
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 Foliendesign: Jörg Steinrücken & Tobias Kahn Vorlesung
 Präsentation transkript:

Halbzeit: Kurze Wiederholung Informatik II, SS 2008 Algorithmen und Datenstrukturen Vorlesung 15 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik Fakultät für Angewandte Wissenschaften Albert-Ludwigs-Universität Freiburg

Algorithmen, Eigenschaften Was sind die wichtigsten Eigenschaften eines Algorithmus? Was versteht man unter partieller, vollständiger Korrektheit? Was bedeutet {P} S {Q}? Für welches P gilt {P} x =t {Q}?, speziell …. x = y -23 {x > 17}? Was versteht man unter einer Schleifeninvarianten? Wie kann man die Effizienz eines Algorithmus messen? Was versteht man unter der best-case, worst-case, average case, amortisierten worst-case Analyse eines Algorithmus? Kennen Sie Beispiele für jeden dieser Fälle? Wie kann man eine amortisierte worst case Analyse durchführen? Informatik II: Algorithmen und Datenstrukturen, SS 2008 Prof. Dr. Thomas Ottmann

Algorithmen, Entwurfsprinzipien Erläutern Sie die folgenden algorithmischen Prinzipien: Divide-and-Conquer, Dynamic Programming. Geben Sie je eine allgemeine, vom Einzelfall unabhängige Beschreibung der Prinzipien, für jedes Prinzip mindestens zwei Algorithmen zur Lösung von Anwendungsproblemen an, die nach diesen Prinzipien entworfen worden sind, und arbeiten Sie die Gemeinsamkeiten und Unterschiede heraus. Welche weiteren Entwurfsprinzipien für Algorithmen kennen Sie? Geben Sie Beispiele für diesen Prinzipien entsprechende Algorithmen an. Informatik II: Algorithmen und Datenstrukturen, SS 2008 Prof. Dr. Thomas Ottmann

Lineare Listen, Stapel, Schlangen Welche Unterschiede bestehen zwischen der Implementation einer linearen Liste mit Hilfe eines Arrays und mit Hilfe von Zeigern als einfach verkette Liste? Wie kann man die Suche in einer sequentiell gespeicherten linearen Liste beschleunigen? Was ist eine perfekte Skipliste? Wie viele Schritte sind erforderlich, um in einer perfekten Skipliste zu suchen, ein Element einzufügen, zu entfernen? Welche Operationen sind charakteristisch für Stapel und Schlangen? Geben Sie je eine Implementation an, die es erlaubt, die Operationen möglichst effizient auszuführen. Geben Sie einige typische Anwendungen für die Verwendung von Stapeln an. Was versteht man unter einer Halbordnung, einer Ordnung, einer topologischen Sortierung? Was versteht man unter einem allgemeinen Sortierverfahren? Geben Sie je ein Beispiel an für ein allgemeines und ein nicht allgemeines Sortierverfahren. Informatik II: Algorithmen und Datenstrukturen, SS 2008 Prof. Dr. Thomas Ottmann

Sortieren Begründen Sie die folgende Aussage: Jedes allgemeine Sortierverfahren (das als einzige Operation zur Bestimmung der Ordnung von Schlüsseln Schlüsselvergleiche ausführt) benötigt im Mittel ebenso wie im schlechtesten Fall zur Sortierung von n Schlüsseln Zeit Ω(n log2n). Für welche elementaren Sortierverfahren hängt die Anzahl der Vergleichsoperationen (Bewegungen) von Schlüsseln nicht davon ab, ob die zu sortierende Folge bereits sortiert ist oder nicht? Was versteht man unter einem Max-Heap? Wie kann man einen Max-Heap herstellen? Wieviele Schritte sind dafür erforderlich? Erläutern Sie das Verfahren Heapsort und geben Sie die wichtigsten Eigenschaften des Verfahrens an. Sortieren Sie die Folge 121, 113, 323, 334, 312, 435, 275, 484, 243, 345, 223, 339 mit Hilfe des Verfahrens Sortieren durch Fachverteilung. Wieviele Schritte be-nötigt man zum Sortieren nach diesem Verfahren für eine Folge von n Schlüsseln? Welche Sortierverfahren folgen dem Divide and Conquer Prinzip? Informatik II: Algorithmen und Datenstrukturen, SS 2008 Prof. Dr. Thomas Ottmann

Suchen Welche Suchverfahren folgen dem Divide and Conquer Prinzip? Erläutern Sie verschiedene Möglichkeiten zur Bestimmung des i-größten Elementes in einer unsortierten Folge F der Länge n und geben Sie an, wieviele Schritte dafür jedesmal benötigt werden. Erläutern Sie den Unterschied zwischen binärer Suche und Interpolationssuche. Kann man in einer sortierten einfach verkettet gespeicherten linearen Liste binär suchen? Informatik II: Algorithmen und Datenstrukturen, SS 2008 Prof. Dr. Thomas Ottmann

Hashing Was sind die wichtigsten Bestandteile eines Hashverfahrens? Welche Eigenschaften sollte eine „gute“ Hashfunktion haben? Welche Unterschiede bestehen zwischen Hashverfahren mit verkettung der Überläufer und offenen Hashverfahren? Welche Nachteile hat das lineare Sondieren? Wie kann man bei offenen Hashverfahren die erfolgreiche/erfolglose Suche beschleunigen? Mit welchen Sondierungsfunktionen kann man ordered Hashing implementieren? Informatik II: Algorithmen und Datenstrukturen, SS 2008 Prof. Dr. Thomas Ottmann

Mathematisches Instrumentarium Wie ist die Folge der Fibonacci Zahlen definiert? Was weiß man über sie? Geben Sie die Definition von Groß-O, Groß-, und Groß- von f für eine Funktion f an. Welche Laufzeit sollten praktikable Algorithmen höchstens haben? Wie verändert sich die noch handhabbare problemgröße bei Verdopplung der Rechnerleistung für einen Algorithmus mit exponentieller Laufzeit? Sei f(n) = 3 n2 + 17 n – 23 und g(n) = 204 n + 510; setzen Sie f und g in Beziehung zueinander mit Hilfe von O und Ω. Informatik II: Algorithmen und Datenstrukturen, SS 2008 Prof. Dr. Thomas Ottmann

Analytisches Welche Lösung hat die folgende Rekursionsgleichung: T(1) = 1, T(n) = 3 T(n/2) Wo kommt diese Rekursionsgleichung vor? T(1) = 1, T(n) =2 T(n/2) + c n, für n>1 mit konstantem c. Wo kommt diese Rekursionsgleichung vor? T(1) = 1, T(n) = T(n/2) + c n, für n>1 mit konstantem c. Was ist der Wert der folgenden Summe: S(k) = 1 2k-1 + 2 2k-2 + 3 2k-3 + … + k 2 0 und wo tritt sie auf? Was ist  i ,  1/i ,  1/2i ? Wo treten Summen dieser Form auf? Geben Sie die Definition von log2n an! Wie rechnet man log2n in log10n um und umgekehrt? Informatik II: Algorithmen und Datenstrukturen, SS 2008 Prof. Dr. Thomas Ottmann