Algorithmen und Datenstrukturen 1 SS 2002

Slides:



Advertisements
Ähnliche Präsentationen
O-Notation in der Informatik
Advertisements

Dr. Brigitte Mathiak Kapitel 10 Physische Datenorganisation.
Aufgabe: Wie stellt man eine for-Schleife durch eine while-Schleife dar ?
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
5. Sortier-Algorithmen Vorbemerkungen:
2. Kapitel: Komplexität und Komplexitätsklassen
Klaus Volbert 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Sommersemester 2004.
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 (10 - Suchverfahren) T. Lauer.
Halbzeit: Kurze Wiederholung
Sortieren vorsortierter Daten
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (02 – Funktionenklassen) Tobias Lauer.
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
Informatik II, SS 2008 Algorithmen und Datenstrukturen Vorlesung 4 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik Fakultät.
Algorithmen und Datenstrukturen
Diskrete Mathematik I Vorlesung 9b AVL-Baum, Algorithmen.
Algorithmische Geometrie
Algorithmen des Internets 2005 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität 1 Materialien zu Übung 9 Bälle in Körbe Ranged.
Gaußscher Algorithmus
Suchen & Sortieren mit Arrays.
Institut für Wirtschaftsinformatik – Software Engineering, JKU Linz 1 Algorithmen und Datenstrukturen Übungsmodul 4 Dr. W. Narzt u. Dr. A. Stritzinger.
Effiziente Algorithmen
Computational Thinking Suchen und Sortieren [Ordnung muss sein…]
Einführung in die Programmierung
Diskrete Mathematik II
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Quantum Computing Hartmut Klauck Universität Frankfurt WS 05/ /23.1.
Effiziente Algorithmen
Einführung in die Programmierung Wintersemester 2009/10 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund.
Abteilung für Telekooperation Übung Softwareentwicklung 1 für Wirtschaftsinformatik Dr. Wieland Schwinger
Institut für Wirtschaftsinformatik – Software Engineering, JKU Linz 1 Algorithmen und Datenstrukturen SS 2005 Mag.Th. Hilpold u. Dr. A.Stritzinger Institut.
Algorithmen und Datenstrukturen SS 2005 Mag.Th. Hilpold u. Dr. A.Stritzinger Institut für Wirtschaftsinformatik- Software Engineering JKU Linz.
Institut für Wirtschaftsinformatik – Software Engineering, JKU Linz 1 Algorithmen und Datenstrukturen SS 2005 Mag.Th. Hilpold u. Dr. A.Stritzinger Institut.
Christian Mansky Design - Fallstudien Christian Mansky
Algorithmen und Datenstrukturen Übungsmodul 10
Algorithmen und Datenstrukturen SS 2005
Institut für Wirtschaftsinformatik – Software Engineering, JKU Linz 1 Algorithmen und Datenstrukturen 1 SS 2007 Dr. W. Narzt u. Dr. A. Stritzinger Institut.
Institut für Wirtschaftsinformatik – Software Engineering, JKU Linz 1 Algorithmen und Datenstrukturen Übungsmodul 5 Dr. W. Narzt u. Dr. A. Stritzinger.
Institut für Wirtschaftsinformatik – Software Engineering, JKU Linz 1 Algorithmen und Datenstrukturen SS 2005 Mag.Th. Hilpold u. Dr. A.Stritzinger Institut.
Programmierpraktikum Java SS 2005
Algorithmen und Datenstrukturen Übungsmodul 8
Algorithmen und Datenstrukturen Übungsmodul 11
Institut für Wirtschaftsinformatik – Software Engineering, JKU Linz 1 Thomas Hilpold: Algorithmen und Datenstrukturen SS 2005 Mag.Th. Hilpold u. Dr. A.Stritzinger.
Algorithmen und Datenstrukturen SS 2005
Algorithmen und Datenstrukturen Übungsmodul 1
Institut für Wirtschaftsinformatik – Software Engineering, JKU Linz 1 Algorithmen und Datenstrukturen Übungsmodul 2 Dr. W. Narzt u. Dr. A. Stritzinger.
Algorithmen und Datenstrukturen Übungsmodul 3
Externspeicher- Algorithmen Petra Mutzel Technische Universität Wien Institut für Computergraphik und Algorithmen Algorithmen und Datenstrukturen 2.
Komplexität von Algorithmen
Das Traveling Salesman Problem (TSP)
Institut für Wirtschaftsinformatik – Software Engineering, JKU Linz 1 Algorithmen und Datenstrukturen SS 2005 Mag.Th. Hilpold u. Dr. A.Stritzinger Institut.
Mag. Thomas Hilpold, Universität Linz, Institut für Wirtschaftsinformatik – Software Engineering 1 Programmierpraktikum Java SS 2005 Mag.Thomas Hilpold.
Algorithmen und Datenstrukturen 1 SS 2002
Java-Kurs - 4. Übung Hausaufgabe Weitere Kontrollstrukturen
Informatik Beschreibung von Abläufen durch Algorithmen 3.3 Wiederholugnsanweisungen 3. Beschreibung von Abläufen durch Algorithmen 3.3 Wiederholungsanweisungen.
Mag. Thomas Hilpold, Universität Linz, Institut für Wirtschaftsinformatik – Software Engineering 1 Algorithmen und Datenstrukturen 1 SS 2002 Mag.Thomas.
Algorithmen und Datenstrukturen 1 SS 2002
Mag. Thomas Hilpold, Universität Linz, Institut für Wirtschaftsinformatik – Software Engineering 1 Algorithmen und Datenstrukturen 1 SS 2002 Mag.Thomas.
Mag. Thomas Hilpold, Universität Linz, Institut für Wirtschaftsinformatik – Software Engineering 1 Algorithmen und Datenstrukturen 1 SS 2002 Mag.Thomas.
Optimierungs- Algorithmen Petra Mutzel Technische Universität Wien Institut für Computergraphik und Algorithmen Algorithmen und Datenstrukturen 2.
Institut für Wirtschaftsinformatik – Software Engineering, JKU Linz 1 Algorithmen und Datenstrukturen 1 SS 2005 Mag.Th. Hilpold u. Dr. A.Stritzinger Institut.
Mag. Thomas Hilpold, Universität Linz, Institut für Wirtschaftsinformatik – Software Engineering 1 Algorithmen und Datenstrukturen 1 SS 2002 Mag.Thomas.
Mag. Thomas Hilpold, Universität Linz, Institut für Wirtschaftsinformatik – Software Engineering 1 Programmierpraktikum Java SS 2005 Mag.Thomas Hilpold.
Algorithmen und Datenstrukturen Prof. Dr. Ralf Möller Universität zu Lübeck Institut für Informationssysteme Stefan Werner (Übungen) sowie viele Tutoren.
Allgemeine Formulierung des Suchproblems
 Präsentation transkript:

Algorithmen und Datenstrukturen 1 SS 2002 Mag.Thomas Hilpold Institut für Wirtschaftsinformatik Software Engineering JKU Linz Termin 9 – Laufzeitkomplexität

Übersicht Lösung Übung 7 Themenbereiche heute Laufzeitkomplexität Übungsbesprechung Übung 9

Lösung Ü7 User: integer erwartet, String eingegeben Device: Hardware Fehler: Printer ausgeschaltet, Festplatte defekt, Web-page kurzfristig nicht erreichbar Physical: Disk full, Mem full Code errors: Eine Methode wird inkorrekt ausgeführt, ungültiger Array index

Komplexität Allgemeines Speicherkomplexität Laufzeitkomplexität Laufzeit = f(Problemgröße) typ. Größe der Datenmenge O-Notation gibt Obergrenze für Laufzeit an. Konstanten werden weggelassen

Komplexität Beispiele für Laufzeitkomplexität Bezeichnung O Wertung konstante Komp. O(1) optimal, selten Hashing, Prepend Logarithmische K. O( log n ) Sehr günstig Binäres Suchen Lineare Komp. O( n ) Günstig Lineares Suchen Leicht überlinear O(n log n) Noch gut Gutes Sortierverfahren Quadratische K. O( n2 ) Ungünstig Schlechtes Sortierverfahren Kubische K. O( n3 ) Matrizenmultiplikation Exponentielle K. O( an ) Katastrophal Rundreiseproblem

Komplexität einige Aussagen wenn P(n) ein Polynom m. Grades ist, so gilt P(n) = O(nm) an wächst stärker als jedes Polynom -> kein polynomialer Algorithmus log n wächst schwächer als n, egal welche Basis

Laufzeitkomplexität Beispiele n O(n) O(n2) O(2^n) 1 1 sec 10 10 sec ca. 1 msec 100 10 msec 4*106 Jahre 1000 1 msec 1 sec 3,4*10286 Jahre

Laufzeitkomplexität grafische Darstellung (kleine Problemgrößen)

Laufzeitkomplexität grafische Darstellung (große Problemgrößen)

Bestimmen der Laufzeitkomplexität For - Schleife Annahme: eine Operation A hat einen konstanten Zeitbedarf. Die Laufzeit für A soll also unabhängig von den Werten der Laufvariablen sein. for (int i = 1..n) { A } Laufzeitkomplexität: O(N), Linear

Bestimmen der Laufzeitkomplexität For – Schleife (2) for (int i = 1..n) { for (int j = 1..n) { A } O(N2), quadratisch Laufzeitkomplexität:

Bestimmen der Laufzeitkomplexität For – Schleife (3) geschachtelt, innere Schleife hat variable Obergrenze for (int i = 1..n) { for (int j = 1..i) { A } Laufzeitkomplexität: ???

Bestimmen der Laufzeitkomplexität For – Schleife (3) geschachtelt, innere Schleife hat variable Obergrenze for (int i = 1..n) { for (int j = 1..i) { A } Laufzeitkomplexität: ???

Bestimmen der Laufzeitkomplexität binäre suche while (i <n) { n = n/2 i = i + 1; } Obergrenze halbiert sich bei jedem Schleifendurchlauf. log(n) Durchläufe = O(log(n)).

Bestimmen der Laufzeitkomplexität an der Tafel

Übung 9 ad 1) Feinanalyse – Suchverfahren analog zur Vorlesung ad 2) asymptotische Laufzeitkomplexität - praktische Betrachtung gegeben O-Notation, Zeit für n = 10; zu berechnen für mehrere n ad 3) Grobanalyse asymptotische Laufzeitkomplexität für einen iterativen und einen rekursiven Algorithmus. gesucht: Anzahl der Schleifendruchläufe, Anzahl der rek. Aufrufe, z.B. Aufrufbaum überlegen, Anzahl der Knoten. ad 4) 2 Algorithmen zum Potenzieren