A6.1 Logarithmus. Algorithmen und Datenstrukturen. Algorithmen und Datenstrukturen. A6.1 Logarithmus. A6.2 Landau-Notation. A6.

Größe: px
Ab Seite anzeigen:

Download "A6.1 Logarithmus. Algorithmen und Datenstrukturen. Algorithmen und Datenstrukturen. A6.1 Logarithmus. A6.2 Landau-Notation. A6."

Transkript

1 Algorithmen und Datenstrukturen 8. März 2018 A6. Laufzeitanalyse: Logarithmus and Landau-Symbole Algorithmen und Datenstrukturen A6. Laufzeitanalyse: Logarithmus and Landau-Symbole Marcel Lüthi and Gabriele Röger Universität Basel 8. März 2018 A6.1 Logarithmus A6.2 Landau-Notation A6.3 Anwendung A6.4 Zusammenfassung M. Lüthi, G. Röger (Universität Basel) Algorithmen und Datenstrukturen 8. März / 31 M. Lüthi, G. Röger (Universität Basel) Algorithmen und Datenstrukturen 8. März / 31 Inhalt dieser Veranstaltung Sortieren Komplexitätsanalyse Fundamentale Datenstrukturen A6.1 Logarithmus A&D Suchen Graphen Strings Weiterführende Themen M. Lüthi, G. Röger (Universität Basel) Algorithmen und Datenstrukturen 8. März / 31 M. Lüthi, G. Röger (Universität Basel) Algorithmen und Datenstrukturen 8. März / 31

2 Logarithmus Logarithmus: Illustration In der Analyse von Mergesort haben wir eine Logarithmusfunktion verwendet. Dies ist bei der Analyse von Laufzeiten oft der Fall. Der Logarithmus zur Basis b ist invers zur Exponentialfunktion mit Basis b, also log b x = y gdw. b y = x. Beispiele: log 2 8 = 3, da 2 3 = 8 Beispiele: log 3 81 = 4, da 3 4 = 81 log b a intuitiv (wenn das glatt aufgeht): Wie oft muss man a durch b teilen bis man bei 1 ist? M. Lüthi, G. Röger (Universität Basel) Algorithmen und Datenstrukturen 8. März / 31 M. Lüthi, G. Röger (Universität Basel) Algorithmen und Datenstrukturen 8. März / 31 Rechenregeln Logarithmus Logarithmus: Beispielrechnung Die Rechenregeln ergeben sich direkt aus den Regeln (a x ) y = a xy = (a y ) x und a x a y = a x+y : Produktregel Potenzrechnung Basisumrechnung Summenregel log b (xy) = log b x + log b y log b (x r ) = r log b x log b x = log a x/ log a b log b (x + y) = log b x + log b (1 + y/x) Bei der Algorithmenanalyse begegnet man öfters Ausdrücken der Form a log b x. Wie bekommt man da den Logarithmus aus dem Exponenten? Beispiel: 5 log 2 x Wir verwenden 5 = 2 log log 2 x = (2 log 2 5 ) log 2 x = 2 log 2 5 log 2 x = 2 log 2 x log 2 5 = (2 log 2 x ) log 2 5 = x log 2 5 x 2.32 M. Lüthi, G. Röger (Universität Basel) Algorithmen und Datenstrukturen 8. März / 31 M. Lüthi, G. Röger (Universität Basel) Algorithmen und Datenstrukturen 8. März / 31

3 Ergebnis für Mergesort A6.2 Landau-Notation Die Laufzeit von Mergesort wächst genauso schnell wie n log 2 n. Theorem Mergesort hat leicht überlineare Laufzeit, d.h. es gibt Konstanten c, c, n 0 > 0, so dass für alle n n 0 : cn log 2 n T (n) c n log 2 n. Wir haben Terme niedrigerer Ordnung (Konstanten und n) in der Abschätzung ignoriert bzw. verschwinden lassen. Wir haben uns nicht für die genauen Werte der Konstanten interessiert, es reicht, wenn irgendwelche passenden Konstanten existieren. Die Laufzeit für kleine n ist nicht so wichtig. M. Lüthi, G. Röger (Universität Basel) Algorithmen und Datenstrukturen 8. März / 31 M. Lüthi, G. Röger (Universität Basel) Algorithmen und Datenstrukturen 8. März / 31 Mehr bisherige Ergebnisse Edmund Landau Theorem Der Merge-Schritt hat lineare Laufzeit, d.h. es gibt Konstanten c, c, n 0 > 0, so dass für alle n n 0 : cn T (n) c n. Theorem Mergesort hat leicht überlineare Laufzeit, d.h. es gibt Konstanten c, c, n 0 > 0, so dass für alle n n 0 : cn log 2 n T (n) c n log 2 n. Theorem Selectionsort hat quadratische Laufzeit, d.h. es gibt Konstanten c > 0, c > 0, n 0 > 0, so dass für n n 0 : cn 2 T (n) c n 2. Können wir das nicht irgendwie kompakter aufschreiben? Edmund Landau deutscher Mathematiker ( ) analytische Zahlentheorie kein Freund angewandter Mathematik International: Bachmann Landau-Notation auch nach Paul Gustav Heinrich Bachmann (deutscher Mathematiker) M. Lüthi, G. Röger (Universität Basel) Algorithmen und Datenstrukturen 8. März / 31 M. Lüthi, G. Röger (Universität Basel) Algorithmen und Datenstrukturen 8. März / 31

4 Landau-Symbol Theta Landau-Symbol Theta: Illustration f Θ(g) Definition Für eine Funktion g : N R ist Θ(g) die Menge aller Funktionen f : N R, die genauso schnell wachsen wie g: Θ(g) = {f c > 0 c > 0 n 0 > 0 n n 0 : c g(n) f (n) c g(n)} Die Laufzeit von Mergesort ist in Θ(n log 2 n). oder auch Die Laufzeit von Mergesort ist Θ(n log 2 n). M. Lüthi, G. Röger (Universität Basel) Algorithmen und Datenstrukturen 8. März / 31 M. Lüthi, G. Röger (Universität Basel) Algorithmen und Datenstrukturen 8. März / 31 Mehr Landau-Symbole Seltener benötigte Landau-Symbole f wächst nicht wesentlich schneller als g O(g) = {f c > 0 n 0 > 0 n n 0 : f (n) c g(n)} O für Ordnung der Funktion f wächst nicht wesentlich langsamer als g Ω(g) = {f c > 0 n 0 > 0 n n 0 : c g(n) f (n)} Es gilt Θ(g) = O(g) Ω(g). Es gilt f Ω(g) gdw. g O(f ). In der Informatik interessieren wir uns oft nur für die Begrenzung des Laufzeitwachstums nach oben: O statt Θ f wächst langsamer als g o(g) = {f c > 0 n 0 > 0 n n 0 : f (n) c g(n)} f wächst schneller als g ω(g) = {f c > 0 n 0 > 0 n n 0 : c g(n) f (n)} Aussprache: ω: kleines Omega Aussprache: Θ: Theta, Ω: Omega, O: Oh M. Lüthi, G. Röger (Universität Basel) Algorithmen und Datenstrukturen 8. März / 31 M. Lüthi, G. Röger (Universität Basel) Algorithmen und Datenstrukturen 8. März / 31

5 Interessante Funktionsklassen Beispiele Θ In aufsteigender Ordnung (abgesehen von allgemeinen n k ): g Wachstum 1 konstant log n logarithmisch n linear n log n leicht überlinear n 2 quadratisch n 3 kubisch n k polynomiell (Konstante k) 2 n exponentiell Bei der Analyse interessiert nur der Term höchster Ordnung (= am schnellsten wachsender Summand) einer Funktion. Beispiele f 1 (n) = 5n 2 + 3n 9 Θ(n 2 ) f2 (n) = 3n log 2 n + 2n 2 Θ(n 2 ) f3 (n) = 9n log 2 n + n + 17 Θ(n log n) f4 (n) = 8 Θ(1) M. Lüthi, G. Röger (Universität Basel) Algorithmen und Datenstrukturen 8. März / 31 M. Lüthi, G. Röger (Universität Basel) Algorithmen und Datenstrukturen 8. März / 31 Beispiele Gross-O Zusammenhänge Bei der Analyse interessiert nur der Term höchster Ordnung (= am schnellsten wachsender Summand) einer Funktion. Beispiele f1 (n) = 8n 2 3n 9 O(n 2 ) f2 (n) = n 3 3n log 2 n O(n 3 ) f3 (n) = 3n log 2 n n O(n log n) Warum ist das so? Es gilt: O(1) O(log n) O(n) O(n log n) O(n k ) O(2 n ) (für k 2) O(n k 1 ) O(n k 2 ) für k 1 < k 2 z.b. O(n 2 ) O(n 3 ) M. Lüthi, G. Röger (Universität Basel) Algorithmen und Datenstrukturen 8. März / 31 M. Lüthi, G. Röger (Universität Basel) Algorithmen und Datenstrukturen 8. März / 31

6 Rechenregeln Grund für Beschränkung auf Term höchster Ordnung Beispiel: 5n 3 + 2n O(n 3 ) Produkt f 1 O(g 1 ) und f 2 O(g 2 ) f 1 f 2 O(g 1 g 2 ) Summe f 1 O(g 1 ) und f 2 O(g 2 ) f 1 + f 2 O(g 1 + g 2 ) Multiplikation mit Konstante k > 0 und f O(g) kf O(g) k > 0 O(kg) = O(g) Wegen Regel bzgl. Multiplikation mit Konstante: 5n 3 O(n 3 ) 2n O(n) Wegen O(n) O(n 3 ) und 2n O(n): 2n O(n 3 ) Wegen Summenregel: 5n 3 + 2n O(n 3 + n 3 ) Mit Multiplikation mit Konstante (bei Klasse): 5n 3 + 2n O(n 3 ) M. Lüthi, G. Röger (Universität Basel) Algorithmen und Datenstrukturen 8. März / 31 M. Lüthi, G. Röger (Universität Basel) Algorithmen und Datenstrukturen 8. März / 31 Schnelle O-Analyse für häufige Code-Konstrukte I A6.3 Anwendung konstante Operation var = 4 O(1) Sequenz konstanter Operationen var1 = 4 O(1) var2 = 4 O(1)... var123 = 4 O(1) O(123 1) = O(1) M. Lüthi, G. Röger (Universität Basel) Algorithmen und Datenstrukturen 8. März / 31 M. Lüthi, G. Röger (Universität Basel) Algorithmen und Datenstrukturen 8. März / 31

7 Schnelle O-Analyse für häufige Code-Konstrukte II Schnelle O-Analyse für häufige Code-Konstrukte III Schleife for i in range(n): O(n) O(n 1) = O(n) res += i * m O(1) for i in range(n): O(n) O(n) for j in range(i): O(n) O(n O(n) 2 ) res += i * (m - j) O(1) i hängt von n ab if-then-else if var < bound: O(1) O(1) res += var O(1) O(1) else: for i in range(n): O(n) O(n 1) res += i * n O(1) = O(n) Achtung: Kann zu unnötig hoher Abschätzung führen, Achtung: wenn teurer Fall nur für kleine n auftritt Achtung: (durch Konstante begrenzt). O(1 + max{1, n}) = O(n) M. Lüthi, G. Röger (Universität Basel) Algorithmen und Datenstrukturen 8. März / 31 M. Lüthi, G. Röger (Universität Basel) Algorithmen und Datenstrukturen 8. März / 31 Beispiel: Worst Case für Insertionsort Beispiel: Best Case für Insertionsort 1 def insertion_sort(array): 2 n = len(array) 3 for i in range(1, n): 4 for j in range(i, 0, -1): 5 if array[j] < array[j-1]: 6 tmp = array[j] 7 array[j] = array[j-1] 8 array[j-1] = tmp 9 else: 10 break 1 def insertion_sort(array): 2 n = len(array) 3 for i in range(1, n): 4 for j in range(i, 0, -1): 5 if array[j] < array[j-1]: 6 tmp = array[j] 7 array[j] = array[j-1] 8 array[j-1] = tmp 9 else: 10 break Worst case: break-fall tritt nie ein. O(1 + n n 1) = O(n 2 ) Überschätzt? Nein, beide Schleifen haben jeweils Ω(n) Durchläufe. Best case: break jeweils direkt bei j = i O(1 + n 1 1) = O(n) Überschätzt? Nein, die äussere Schleifen hat Ω(n) Durchläufe. M. Lüthi, G. Röger (Universität Basel) Algorithmen und Datenstrukturen 8. März / 31 M. Lüthi, G. Röger (Universität Basel) Algorithmen und Datenstrukturen 8. März / 31

8 Analyse Insertionsort mit Kostenmodell A6. Laufzeitanalyse: Logarithmus and Landau-Symbole Zusammenfassung 1 def insertion_sort(array): 2 n = len(array) 3 for i in range(1, n): 4 for j in range(i, 0, -1): 5 if array[j] < array[j-1]: 6 tmp = array[j] 7 array[j] = array[j-1] 8 array[j-1] = tmp 9 else: 10 break A6.4 Zusammenfassung Best case: n 1 Schlüsselvergleiche, 0 Vertauschungen Worst case: n 1 k=1 k Θ(n) Schlüsselvergleiche und Vertauschungen M. Lüthi, G. Röger (Universität Basel) Algorithmen und Datenstrukturen 8. März / 31 M. Lüthi, G. Röger (Universität Basel) Algorithmen und Datenstrukturen 8. März / 31 A6. Laufzeitanalyse: Logarithmus and Landau-Symbole Zusammenfassung Zusammenfassung Die Logarithmusfunktion ist die Umkehrfunktion der Exponentalfunktion. Mit Landau-Symbolen definiert man Klassen von Funktionen, die nicht schneller/nicht langsamer/... wachsen als eine Funktion g. O(g): Wachstum nicht schneller als g Θ(g): Wachstum im Wesentlichen wie g Insertionsort hat im besten Fall Laufzeit Θ(n) im schlechtesten Fall Laufzeit Θ(n 2 ) M. Lüthi, G. Röger (Universität Basel) Algorithmen und Datenstrukturen 8. März / 31

V. Claus, Juli 2005 Einführung in die Informatik II 45

V. Claus, Juli 2005 Einführung in die Informatik II 45 Um die Größenordnung einer reellwertigen oder ganzzahligen Funktion zu beschreiben, verwenden wir die so genannten Landau-Symbole (nach dem deutschen Mathematiker Edmund Landau, 1877-1938). Hierbei werden

Mehr

WS 2009/10. Diskrete Strukturen

WS 2009/10. Diskrete Strukturen WS 2009/10 Diskrete Strukturen Prof. Dr. J. Esparza Lehrstuhl für Grundlagen der Softwarezuverlässigkeit und theoretische Informatik Fakultät für Informatik Technische Universität München http://www7.in.tum.de/um/courses/ds/ws0910

Mehr

Algorithmen und Datenstrukturen Effizienz und Funktionenklassen

Algorithmen und Datenstrukturen Effizienz und Funktionenklassen Algorithmen und Datenstrukturen Effizienz und Funktionenklassen Matthias Teschner Graphische Datenverarbeitung Institut für Informatik Universität Freiburg SS 12 Lernziele der Vorlesung Algorithmen Sortieren,

Mehr

A3.1 Sortieralgorithmen

A3.1 Sortieralgorithmen Algorithmen und Datenstrukturen 1. März 2018 A3. : Selection- und Insertionsort Algorithmen und Datenstrukturen A3. : Selection- und Insertionsort Marcel Lüthi and Gabriele Röger Universität Basel 1. März

Mehr

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen Algorithmen und Datenstrukturen A3. Sortieren: Selection- und Insertionsort Marcel Lüthi and Gabriele Röger Universität Basel 1. März 2018 Sortieralgorithmen Inhalt dieser Veranstaltung A&D Sortieren Komplexitätsanalyse

Mehr

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen 1 Algorithmen und Datenstrukturen Wintersemester 2014/15 3. Vorlesung Laufzeitanalyse Prof. Dr. Alexander Wolff Lehrstuhl für Informatik I 2 Recap: Diskutieren Sie mit Ihrer NachbarIn! 1. 2. 3. Was sind

Mehr

Algorithmen und Datenstrukturen (ESE) Entwurf, Analyse und Umsetzung von Algorithmen (IEMS) WS 2012 / 2013 Vorlesung 3, Donnerstag 7.

Algorithmen und Datenstrukturen (ESE) Entwurf, Analyse und Umsetzung von Algorithmen (IEMS) WS 2012 / 2013 Vorlesung 3, Donnerstag 7. Algorithmen und Datenstrukturen (ESE) Entwurf, Analyse und Umsetzung von Algorithmen (IEMS) WS 2012 / 2013 Vorlesung 3, Donnerstag 7. November 2013 (O-Notation, Theta, Omega) Junior-Prof. Dr. Olaf Ronneberger

Mehr

Übung Algorithmen und Datenstrukturen

Übung Algorithmen und Datenstrukturen Übung Algorithmen und Datenstrukturen Sommersemester 2016 Patrick Schäfer, Humboldt-Universität zu Berlin Organisation Vorlesung: Montag 11 13 Uhr Marius Kloft RUD 26, 0 115 Mittwoch 11 13 Uhr Marius Kloft

Mehr

Algorithmen und Datenstrukturen (ESE) Entwurf, Analyse und Umsetzung von Algorithmen (IEMS) WS 2014 / 2015 Vorlesung 3, Donnerstag 6.

Algorithmen und Datenstrukturen (ESE) Entwurf, Analyse und Umsetzung von Algorithmen (IEMS) WS 2014 / 2015 Vorlesung 3, Donnerstag 6. Algorithmen und Datenstrukturen (ESE) Entwurf, Analyse und Umsetzung von Algorithmen (IEMS) WS 2014 / 2015 Vorlesung 3, Donnerstag 6. November 2014 (O-Notation, Theta, Omega) Junior-Prof. Dr. Olaf Ronneberger

Mehr

A7.1 Untere Schranke. Algorithmen und Datenstrukturen. A7.1 Untere Schranke. Algorithmen und Datenstrukturen. A7.2 Quicksort. A7.

A7.1 Untere Schranke. Algorithmen und Datenstrukturen. A7.1 Untere Schranke. Algorithmen und Datenstrukturen. A7.2 Quicksort. A7. Algorithmen und Datenstrukturen 14. März 2018 A7. III Algorithmen und Datenstrukturen A7. III Marcel Lüthi and Gabriele Röger Universität Basel 14. März 2018 A7.1 Untere Schranke A7.2 Quicksort A7.3 Heapsort

Mehr

Notation für das asymptotische Verhalten von Funktionen

Notation für das asymptotische Verhalten von Funktionen Vorbemerkungen: Notation für das asymptotische Verhalten von Funktionen 1. Aussagen über die Komplexität von Algorithmen und von Problemen sollen (in der Regel) unabhängig von speziellen Maschinenmodellen

Mehr

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen Algorithmen und Datenstrukturen A7. Sortieren III Marcel Lüthi and Gabriele Röger Universität Basel 14. März 2018 Untere Schranke Sortierverfahren Sortieren Vergleichsbasierte Verfahren Nicht vergleichsbasierte

Mehr

Das O-Tutorial. 1 Definition von O, Ω, Θ, o und ω

Das O-Tutorial. 1 Definition von O, Ω, Θ, o und ω Definition von O, Ω, Θ, o und ω Das O-Tutorial Seien f und g zwei Funktionen von N nach R 0. Hierbei bezeichne R 0 die nicht-negativen reellen Zahlen. Die Funktionsmengen O, Ω, Θ, o und ω sind wie folgt

Mehr

Algorithmen und Datenstrukturen (für ET/IT)

Algorithmen und Datenstrukturen (für ET/IT) Algorithmen und Datenstrukturen (für ET/IT) Sommersemester 2017 Dr. Stefanie Demirci Computer Aided Medical Procedures Technische Universität München Programm heute 1 Einführung 2 Grundlagen von Algorithmen

Mehr

Programmieren und Problemlösen

Programmieren und Problemlösen Dennis Komm Programmieren und Problemlösen Komplexität von Algorithmen Frühling 2019 27. Februar 2019 Komplexität von Algorithmen Aufgabe Primzahltest Schreibe ein Programm, das eine ganze Zahl x als Eingabe

Mehr

Informatik II, SS 2016

Informatik II, SS 2016 Informatik II - SS 2016 (Algorithmen & Datenstrukturen) Vorlesung 3 (27.4.2014) O-Notation, Asymptotische Analyse, Sortieren III Algorithmen und Komplexität Selection Sort Algorithmus SelectionSort (informell):

Mehr

Asymptotik und Laufzeitanalyse

Asymptotik und Laufzeitanalyse und Vorkurs Informatik SoSe13 08. April 2013 und Algorithmen = Rechenvorschriften Wir fragen uns: Ist der Algorithmus effizient? welcher Algorithmus löst das Problem schneller? wie lange braucht der Algorithmus

Mehr

Komplexität von Algorithmen:

Komplexität von Algorithmen: Komplexität von Algorithmen: Ansatz: Beschreiben/erfassen der Komplexität über eine Funktion, zur Abschätzung des Rechenaufwandes abhängig von der Größe der Eingabe n Uns interessiert: (1) Wie sieht eine

Mehr

3.3 Laufzeit von Programmen

3.3 Laufzeit von Programmen 3.3 Laufzeit von Programmen Die Laufzeit eines Programmes T(n) messen wir als die Zahl der Befehle, die für die Eingabe n abgearbeitet werden Betrachten wir unser Programm zur Berechnung von Zweierpotenzen,

Mehr

Übung Algorithmen und Datenstrukturen

Übung Algorithmen und Datenstrukturen Übung Algorithmen und Datenstrukturen Sommersemester 2017 Marc Bux, Humboldt-Universität zu Berlin Agenda 1. Die Landau-Notation (Wiederholung und Vertiefung) 2. Vorbereitung Aufgabenblatt 1, Aufgabe 1

Mehr

Übung Algorithmen und Datenstrukturen

Übung Algorithmen und Datenstrukturen Übung Algorithmen und Datenstrukturen Sommersemester 017 Marc Bux, Humboldt-Universität zu Berlin Agenda 1. Vorrechnen von Aufgabenblatt 1. Wohlgeformte Klammerausdrücke 3. Teile und Herrsche Agenda 1.

Mehr

Die asymptotische Notation

Die asymptotische Notation Die asymptotische Notation f, g : N R 0 seien Funktionen, die einer Eingabelänge n N eine nicht-negative Laufzeit f (n), bzw. g(n) zuweisen. Asymptotik 1 / 9 Die asymptotische Notation f, g : N R 0 seien

Mehr

Komplexität von Algorithmen OOPM, Ralf Lämmel

Komplexität von Algorithmen OOPM, Ralf Lämmel Ganz schön komplex! Komplexität von Algorithmen OOPM, Ralf Lämmel 885 Motivierendes Beispiel Algorithmus Eingabe: ein Zahlen-Feld a der Länge n Ausgabe: Durchschnitt Fragen: sum = 0; i = 0; while (i

Mehr

Algorithmen und Datenstrukturen I. Grundlagen. Prof. Dr. Oliver Braun. Fakultät für Informatik und Mathematik Hochschule München

Algorithmen und Datenstrukturen I. Grundlagen. Prof. Dr. Oliver Braun. Fakultät für Informatik und Mathematik Hochschule München Algorithmen und Datenstrukturen I Fakultät für Informatik und Mathematik Hochschule München Letzte Änderung: 18.03.2018 18:16 Inhaltsverzeichnis Algorithmus..................................... 2 Problem

Mehr

Informatik II, SS 2018

Informatik II, SS 2018 Informatik II - SS 2018 (Algorithmen & Datenstrukturen) Vorlesung 2 (23.4.2018) Sortieren II, Asymptotische Analyse, O-Notation Algorithmen und Komplexität Laufzeit Zeitmessung SelectionSort n 2 Laufzeit/n

Mehr

Übung Algorithmen und Datenstrukturen

Übung Algorithmen und Datenstrukturen Übung Algorithmen und Datenstrukturen Sommersemester 2017 Marc Bux, Humboldt-Universität zu Berlin Organisatorisches Vorlesung: Montag 11 13 Uhr Ulf Leser RUD 26, 0 115 Mittwoch 11 13 Uhr Ulf Leser RUD

Mehr

Übung zu Algorithmen und Datenstrukturen (für ET/IT)

Übung zu Algorithmen und Datenstrukturen (für ET/IT) Übung zu Algorithmen und Datenstrukturen (für ET/IT) Wintersemester 2012/13 Jakob Vogel Computer-Aided Medical Procedures Technische Universität München Komplexität von Programmen Laufzeit kann näherungsweise

Mehr

Algorithmen und Datenstrukturen Übung #4 BFS/DFS, Wachstum von Funktionen

Algorithmen und Datenstrukturen Übung #4 BFS/DFS, Wachstum von Funktionen Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen Algorithmen und Datenstrukturen Übung #4 BFS/DFS, Wachstum von Funktionen Christian Rieck, Arne Schmidt 22.11.2018 Heute 12 Breiten-

Mehr

Prof. Dr. Margarita Esponda

Prof. Dr. Margarita Esponda Analyse von Algorithmen Die O-Notation WS 2012/2013 Prof. Dr. Margarita Esponda Freie Universität Berlin 1 Korrekte und effiziente Lösung von Problemen Problem Wesentlicher Teil der Lösung eines Problems.

Mehr

Algorithmen und Datenstrukturen I Grundlagen

Algorithmen und Datenstrukturen I Grundlagen Algorithmen und Datenstrukturen I Grundlagen Prof. Dr. Oliver Braun Letzte Änderung: 01.11.2017 14:15 Algorithmen und Datenstrukturen I, Grundlagen 1/24 Algorithmus es gibt keine präzise Definition Handlungsvorschrift

Mehr

Übung zu Algorithmen und Datenstrukturen (für ET/IT)

Übung zu Algorithmen und Datenstrukturen (für ET/IT) Übung zu Algorithmen und Datenstrukturen (für ET/IT) Sommersemester 2017 Rüdiger Göbl, Mai Bui Computer Aided Medical Procedures Technische Universität München Wiederholung: Validation Validation: nicht-formaler

Mehr

Grundlagen: Algorithmen und Datenstrukturen

Grundlagen: Algorithmen und Datenstrukturen Grundlagen: Algorithmen und Datenstrukturen Prof. Dr. Hanjo Täubig Lehrstuhl für Effiziente Algorithmen (Prof. Dr. Ernst W. Mayr) Institut für Informatik Technische Universität München Sommersemester 2010

Mehr

Informatik I Komplexität von Algorithmen

Informatik I Komplexität von Algorithmen Informatik I Komplexität von Algorithmen G. Zachmann Clausthal University, Germany zach@in.tu-clausthal.de Leistungsverhalten von Algorithmen Speicherplatzkomplexität: Wird primärer & sekundärer Speicherplatz

Mehr

Komplexität. G. Zachmann Clausthal University, Germany Leistungsverhalten von Algorithmen

Komplexität. G. Zachmann Clausthal University, Germany Leistungsverhalten von Algorithmen lausthal Informatik II Komplexität von Algorithmen. Zachmann lausthal University, ermany zach@in.tu-clausthal.de Leistungsverhalten von Algorithmen Speicherplatzkomplexität: Wird primärer & sekundärer

Mehr

Datenstrukturen, Algorithmen und Programmierung 2

Datenstrukturen, Algorithmen und Programmierung 2 Datenstrukturen, Algorithmen und Programmierung 2 Professor Dr. Lehrstuhl für Algorithm Engineering, LS11 Fakultät für Informatik, TU Dortmund 2. VO SS 2009 16. April 2009 1 Überblick Asymptotische Schranken

Mehr

Übersicht. Datenstrukturen und Algorithmen. Laufzeit von Algorithmen. Übersicht. Vorlesung 2: Asymptotische Effizienz (K3) Begründung Grenzwerte

Übersicht. Datenstrukturen und Algorithmen. Laufzeit von Algorithmen. Übersicht. Vorlesung 2: Asymptotische Effizienz (K3) Begründung Grenzwerte Übersicht Datenstrukturen und Algorithmen Vorlesung 2: (K3) Joost-Pieter Katoen Lehrstuhl für Informatik 2 Software Modeling and Verification Group http://moves.rwth-aachen.de/teaching/ss-15/dsal/ 10.

Mehr

2. Grundlagen. Beschreibung von Algorithmen durch Pseudocode. Korrektheit von Algorithmen durch Invarianten.

2. Grundlagen. Beschreibung von Algorithmen durch Pseudocode. Korrektheit von Algorithmen durch Invarianten. 2. Grundlagen Beschreibung von Algorithmen durch Pseudocode. Korrektheit von Algorithmen durch Invarianten. Laufzeitverhalten beschreiben durch O-Notation. 1 Beispiel Minimum-Suche Eingabe bei Minimum

Mehr

Algorithmen und Datenstrukturen Tutorium I

Algorithmen und Datenstrukturen Tutorium I Algorithmen und Datenstrukturen Tutorium I 20. - 25. 04. 2016 AlgoDat - Tutorium I 1 1 Organisatorisches Kontakt 2 Landau-Notation Definiton von O Logarithmen Gesetze & Ableitung Satz von l Hôpital 3 Algorithmen

Mehr

1. Asymptotische Notationen 2. Zahlentheoretische Algorithmen 3. Sortierverfahren 4. String Matching 5. Ausgewählte Datenstrukturen

1. Asymptotische Notationen 2. Zahlentheoretische Algorithmen 3. Sortierverfahren 4. String Matching 5. Ausgewählte Datenstrukturen Gliederung 1. Asymptotische Notationen 2. Zahlentheoretische Algorithmen 3. Sortierverfahren 4. String Matching 5. Ausgewählte Datenstrukturen 1/1, Folie 1 2009 Prof. Steffen Lange - HDa/FbI - Effiziente

Mehr

Algorithmen und Datenstrukturen Kapitel 1 Algorithmen & Algorithmenanalyse

Algorithmen und Datenstrukturen Kapitel 1 Algorithmen & Algorithmenanalyse Algorithmen und Datenstrukturen Kapitel 1 Algorithmen & Frank Heitmann heitmann@informatik.uni-hamburg.de 14. Oktober 2015 Frank Heitmann heitmann@informatik.uni-hamburg.de 1/48 Der Sprung ins Wasser...

Mehr

Informatik I Komplexität von Algorithmen

Informatik I Komplexität von Algorithmen Leistungsverhalten von Algorithmen Informatik I Komplexität von Algorithmen G. Zachmann Clausthal University, Germany zach@in.tu-clausthal.de Speicherplatzkomplexität: Wird primärer & sekundärer Speicherplatz

Mehr

Übungen zu Algorithmentechnik WS 09/10

Übungen zu Algorithmentechnik WS 09/10 Übungen zu Algorithmentechnik WS 09/10 1. Kurzsitzung Thomas Pajor 22. Oktober 2009 1/ 25 Eure Übungsleiter Tanja Hartmann t.hartmann@kit.edu Raum 306, Gebäude 50.34 Thomas Pajor pajor@kit.edu Raum 322,

Mehr

Algorithmen und Datenstrukturen 1-1. Seminar -

Algorithmen und Datenstrukturen 1-1. Seminar - Algorithmen und Datenstrukturen 1-1. Seminar - Dominic Rose Bioinformatics Group, University of Leipzig Wintersemester 2009/10 Inhalt der ersten beiden Vorlesungen Algorithmenbegriff Komplexität, Asymptotik

Mehr

f 1 (n) = log(n) + n 2 n 5 f 2 (n) = n 3 + n 2 f 3 (n) = log(n 2 ) f 4 (n) = n n f 5 (n) = (log(n)) 2

f 1 (n) = log(n) + n 2 n 5 f 2 (n) = n 3 + n 2 f 3 (n) = log(n 2 ) f 4 (n) = n n f 5 (n) = (log(n)) 2 Prof. aa Dr. E. Ábrahám Datenstrukturen und Algorithmen SS Lösung - Präsenzübung.05.0 F. Corzilius, S. Schupp, T. Ströder Aufgabe (Asymptotische Komplexität): (6 + 0 + 6 = Punkte) a) Geben Sie eine formale

Mehr

Kapitel 10. Komplexität von Algorithmen und Sortieralgorithmen

Kapitel 10. Komplexität von Algorithmen und Sortieralgorithmen Kapitel 10 Komplexität von Algorithmen und Sortieralgorithmen Arrays 1 Ziele Komplexität von Algorithmen bestimmen können (in Bezug auf Laufzeit und auf Speicherplatzbedarf) Sortieralgorithmen kennenlernen:

Mehr

Zunächst ein paar einfache "Rechen"-Regeln: Lemma, Teil 1: Für beliebige Funktionen f und g gilt:

Zunächst ein paar einfache Rechen-Regeln: Lemma, Teil 1: Für beliebige Funktionen f und g gilt: Der Groß-O-Kalkül Zunächst ein paar einfache "Rechen"-Regeln: G. Zachmann Informatik 1 - WS 05/06 Komplexität 22 Additionsregel Lemma, Teil 1: Für beliebige Funktionen f und g gilt: Zu beweisen: nur das

Mehr

2 Wachstumsverhalten von Funktionen

2 Wachstumsverhalten von Funktionen Algorithmen und Datenstrukturen 40 2 Wachstumsverhalten von Funktionen Beim Vergleich der Worst-Case-Laufzeiten von Algorithmen in Abhängigkeit von der Größe n der Eingabedaten ist oft nur deren Verhalten

Mehr

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen M. Lüthi (Universität Basel) Algorithmen und Datenstrukturen 16. Mai 2019 1 / 35 Algorithmen und Datenstrukturen D1. Sortieren von Strings Gabi Röger und Marcel Lüthi Universität Basel 16. Mai 2019 M.

Mehr

Algorithmen und Datenstrukturen. D1.1 Motivation. Algorithmen und Datenstrukturen. D1.2 Strings. D1.3 Sortieren von Strings. D1.4 LSD-Sortierverfahren

Algorithmen und Datenstrukturen. D1.1 Motivation. Algorithmen und Datenstrukturen. D1.2 Strings. D1.3 Sortieren von Strings. D1.4 LSD-Sortierverfahren Algorithmen und Datenstrukturen 16. Mai 2019 D1. Sortieren von Strings Algorithmen und Datenstrukturen D1. Sortieren von Strings Gabi Röger und Marcel Lüthi Universität Basel 16. Mai 2019 D1.1 Motivation

Mehr

Ziele. Kapitel 10: Komplexität von Algorithmen und Sortierverfahren. Beispiel: Lineare Suche eines Elements in einem Array (1)

Ziele. Kapitel 10: Komplexität von Algorithmen und Sortierverfahren. Beispiel: Lineare Suche eines Elements in einem Array (1) Einführung in die Informatik: Programmierung und Softwareentwicklung Wintersemester 2018/19 Ziele Kapitel 10: Komplexität von Algorithmen und Sortierverfahren Prof. Dr. David Sabel Lehr- und Forschungseinheit

Mehr

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen Algorithmen und Datenstrukturen D1. Sortieren von Strings Gabi Röger und Marcel Lüthi Universität Basel 16. Mai 2019 Übersicht Sortieren A&D Komplexitätsanalyse Fundamentale Datenstrukturen Suchen Graphen

Mehr

es gibt Probleme, die nicht berechenbar sind (z.b. Menge aller Funktionen N N und die Menge aller Sprachen sind überabzählbar)

es gibt Probleme, die nicht berechenbar sind (z.b. Menge aller Funktionen N N und die Menge aller Sprachen sind überabzählbar) Komplexitätstheorie es gibt Probleme, die nicht berechenbar sind (z.b. Menge aller Funktionen N N und die Menge aller Sprachen sind überabzählbar) andere Probleme sind im Prinzip berechenbar, möglicherweise

Mehr

2. Effizienz von Algorithmen

2. Effizienz von Algorithmen Effizienz von Algorithmen 2. Effizienz von Algorithmen Effizienz von Algorithmen, Random Access Machine Modell, Funktionenwachstum, Asymptotik [Cormen et al, Kap. 2.2,3,4.2-4.4 Ottman/Widmayer, Kap. 1.1]

Mehr

Der Sprung ins Wasser... Algorithmen und Datenstrukturen Kapitel 1 Algorithmen & Algorithmenanalyse. Und warum brauch ich das?! Organisatorisches 1

Der Sprung ins Wasser... Algorithmen und Datenstrukturen Kapitel 1 Algorithmen & Algorithmenanalyse. Und warum brauch ich das?! Organisatorisches 1 Der Sprung ins Wasser... Algorithmen und Datenstrukturen Kapitel 1 Algorithmen & Frank Heitmann heitmann@informatik.uni-hamburg.de Worum geht es bei Algorithmen und Datenstrukturen? 14. Oktober 2015 Frank

Mehr

Algorithmen und Datenstrukturen Kapitel 1 Algorithmen & Algorithmenanalyse

Algorithmen und Datenstrukturen Kapitel 1 Algorithmen & Algorithmenanalyse Algorithmen und Datenstrukturen Kapitel 1 Algorithmen & Frank Heitmann heitmann@informatik.uni-hamburg.de 14. Oktober 2015 Frank Heitmann heitmann@informatik.uni-hamburg.de 1/48 Der Sprung ins Wasser...

Mehr

Abgabe: (vor der Vorlesung) Aufgabe 2.1 (P) O-Notation Beweisen Sie die folgenden Aussagen für positive Funktionen f und g:

Abgabe: (vor der Vorlesung) Aufgabe 2.1 (P) O-Notation Beweisen Sie die folgenden Aussagen für positive Funktionen f und g: TECHNISCHE UNIVERSITÄT MÜNCHEN FAKULTÄT FÜR INFORMATIK Lehrstuhl für Sprachen und Beschreibungsstrukturen SS 2009 Grundlagen: Algorithmen und Datenstrukturen Übungsblatt 2 Prof. Dr. Helmut Seidl, S. Pott,

Mehr

Stichpunktezettel fürs Tutorium

Stichpunktezettel fürs Tutorium Stichpunktezettel fürs Tutorium Moritz und Dorian 13. Januar 2010 1 Komplexitätsanalyse 1.1 Einführendes Beispiel Gegeben ist der folgende Algorithmus, der eine Liste mit Zahlen sortiert: 1 void sort(list_t*

Mehr

Übung Algorithmen und Datenstrukturen

Übung Algorithmen und Datenstrukturen Übung Algorithmen und Datenstrukturen Sommersemester 2015 Marc Bux, Humboldt-Universität zu Berlin Organisation Vorlesung: Montag 11 13 Uhr Ulf Leser RUD 26, 0 115 Mittwoch 11 13 Uhr Ulf Leser RUD 26,

Mehr

UE Algorithmen und Datenstrukturen 1 UE Praktische Informatik 1. Übung 5. Asymptotische Laufzeitkomplexität Definition Regeln Beispiele

UE Algorithmen und Datenstrukturen 1 UE Praktische Informatik 1. Übung 5. Asymptotische Laufzeitkomplexität Definition Regeln Beispiele UE Algorithmen und Datenstrukturen 1 UE Praktische Informatik 1 Übung 5 Asymptotische Laufzeitkomplexität Definition Regeln Beispiele Institut für Pervasive Computing Johannes Kepler Universität Linz Altenberger

Mehr

Informatik II. 1. Einführung. Ziele der Vorlesung. Inhalte der Vorlesung. Vorlesung am D-BAUG der ETH Zürich

Informatik II. 1. Einführung. Ziele der Vorlesung. Inhalte der Vorlesung. Vorlesung am D-BAUG der ETH Zürich Informatik II Vorlesung am D-BAUG der ETH Zürich 1. Einführung Felix Friedrich & Hermann Lehner Algorithmen und Datenstrukturen, erstes Beispiel FS 2018 1 23 Ziele der Vorlesung Inhalte der Vorlesung Verständnis

Mehr

Einführung in die Informatik Algorithmen und Datenstrukturen. Thema 17 Sortieren

Einführung in die Informatik Algorithmen und Datenstrukturen. Thema 17 Sortieren Einführung in die Informatik Algorithmen und Datenstrukturen Thema 17 Sortieren Sortierproblem Es gibt eine Menge von Datensätzen, und jeder dieser Sätze besitzt einen (möglichst eindeutigen) Schlüssel.

Mehr

Kapitel 9. Komplexität von Algorithmen und Sortieralgorithmen

Kapitel 9. Komplexität von Algorithmen und Sortieralgorithmen Kapitel 9 Komplexität von Algorithmen und Sortieralgorithmen Arrays 1 Ziele Komplexität von Algorithmen bestimmen können (in Bezug auf Laufzeit und auf Speicherplatzbedarf) Sortieralgorithmen kennenlernen:

Mehr

Abschnitt 7: Komplexität von imperativen Programmen

Abschnitt 7: Komplexität von imperativen Programmen Abschnitt 7: Komplexität von imperativen Programmen 7. Komplexität von imperativen Programmen 7 Komplexität von imperativen Programmen Einf. Progr. (WS 08/09) 399 Ressourcenbedarf von Algorithmen Algorithmen

Mehr

Informatik I Komplexität von Algorithmen

Informatik I Komplexität von Algorithmen Leistungsverhalten von Algorithmen Informatik I Komplexität von Algorithmen G. Zachmann Clausthal University, Germany zach@in.tu-clausthal.de Speicherplatzkomplexität: Wird primärer & sekundärer Speicherplatz

Mehr

Rekursionen (Teschl/Teschl 8.1/8.2)

Rekursionen (Teschl/Teschl 8.1/8.2) Rekursionen (Teschl/Teschl 8.1/8.2) treten in vielen Algorithmen auf: Eine Rekursion ist eine Folge von Zahlen a 0, a 1, a 2,.., bei der jedes a n aus seinen Vorgängern berechnet wird: Beispiele a n =

Mehr

Komplexität. G. Zachmann Clausthal University, Germany Leistungsverhalten von Algorithmen

Komplexität. G. Zachmann Clausthal University, Germany Leistungsverhalten von Algorithmen lausthal Informatik II Komplexität von Algorithmen. Zachmann lausthal University, ermany zach@tu-clausthal.de Leistungsverhalten von Algorithmen Speicherplatzkomplexität: Wird primärer & sekundärer Speicherplatz

Mehr

13 (2-4)-Bäume Implementierbare Funktionen. (2-4)-Bäume sind durch folgende Eigenschaften deniert: 1. Alle Äste sind gleich lang

13 (2-4)-Bäume Implementierbare Funktionen. (2-4)-Bäume sind durch folgende Eigenschaften deniert: 1. Alle Äste sind gleich lang 13 (2-4)-Bäume (2-4)-Bäume sind durch folgende Eigenschaften deniert: 1. Alle Äste sind gleich lang 2. Die Ordnung (maximale Anzahl der Söhne eines Knotens) ist gleich 4 3. Innere Knoten haben 2 Söhne

Mehr

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen Technische Universität München WiSe 2012/13 Institut für Informatik I-16 Lösungsblatt 7 Dr. Tobias Lasser 3. Dezember 2012 Jakob Vogel Algorithmen und Datenstrukturen Aufgabe 1 Rechnen mit Landau-Symbolen

Mehr

Präsenzübung Datenstrukturen und Algorithmen SS 2014

Präsenzübung Datenstrukturen und Algorithmen SS 2014 Prof. aa Dr. E. Ábrahám F. Corzilius, S. Schupp, T. Ströder Präsenzübung Datenstrukturen und Algorithmen SS 2014 Vorname: Nachname: Studiengang (bitte genau einen markieren): Informatik Bachelor Informatik

Mehr

Kombinatorik: Abzählverfahren (Teschl/Teschl 7) Summenregel. Allgemeiner

Kombinatorik: Abzählverfahren (Teschl/Teschl 7) Summenregel. Allgemeiner Kombinatorik: Abzählverfahren (Teschl/Teschl 7) Fragestellung: Wie viele verschiedene Möglichkeiten gibt es, Elemente auszuwählen, z. B. Anzahl verschiedener möglicher Passwörter, IPAdressen, Zahlenkombinationen

Mehr

Informatik II. Algorithmen und Datenstrukturen. Vorläufige Version 1 c 2002 Peter Thiemann

Informatik II. Algorithmen und Datenstrukturen. Vorläufige Version 1 c 2002 Peter Thiemann Informatik II Algorithmen und Datenstrukturen Vorläufige Version 1 c 2002 Peter Thiemann 1 Einführung 1.1 Inhalt Wichtige Datentypen und ihre Implementierung (Datenstrukturen) Operationen auf Datenstrukturen

Mehr

4. Sortieren 4.1 Vorbemerkungen

4. Sortieren 4.1 Vorbemerkungen . Seite 1/21 4. Sortieren 4.1 Vorbemerkungen allgemeines Sortierproblem spezielle Sortierprobleme Ordne a 1,..., a n so um, dass Elemente in aufsteigender Reihenfolge stehen. Die a i stammen aus vollständig

Mehr

Vorlesung Datenstrukturen

Vorlesung Datenstrukturen Vorlesung Datenstrukturen Einleitung und Grundlagen Maike Buchin 18.4.2017 Verantwortliche Dozentin Organisation der Übungen Übungsleiter Korrekteure Maike Buchin Maike.Buchin@rub.de Raum NA 1/70 Sprechzeiten:

Mehr

2. Klausur Datenstrukturen und Algorithmen SS 2014

2. Klausur Datenstrukturen und Algorithmen SS 2014 Prof. aa Dr. E. Ábrahám F. Corzilius, S. Schupp, T. Ströder 2. Klausur Datenstrukturen und Algorithmen SS 2014 Vorname: Nachname: Studiengang (bitte genau einen markieren): Informatik Bachelor Informatik

Mehr

Vorlesung Datenstrukturen

Vorlesung Datenstrukturen Vorlesung Datenstrukturen Weitere Grundlagen Maike Buchin 20.4.2017 Wiederholung wir interessieren uns für effizienten Algorithmen und Datenstrukturen Laufzeiten messen wir asymptotisch in der Oh-Notation

Mehr

Kapitel 9. Komplexität von Algorithmen und Sortieralgorithmen

Kapitel 9. Komplexität von Algorithmen und Sortieralgorithmen 1 Kapitel 9 Komplexität von Algorithmen und Sortieralgorithmen Ziele 2 Komplexität von Algorithmen bestimmen können (in Bezug auf Laufzeit und auf Speicherplatzbedarf) Sortieralgorithmen kennenlernen:

Mehr

Informatik II. Vorlesung am D-BAUG der ETH Zürich. Felix Friedrich & Hermann Lehner FS 2018

Informatik II. Vorlesung am D-BAUG der ETH Zürich. Felix Friedrich & Hermann Lehner FS 2018 1 Informatik II Vorlesung am D-BAUG der ETH Zürich Felix Friedrich & Hermann Lehner FS 2018 23 1. Einführung Algorithmen und Datenstrukturen, erstes Beispiel 24 Ziele der Vorlesung Verständnis des Entwurfs

Mehr

Algorithmus Analyse. Johann Basnakowski

Algorithmus Analyse. Johann Basnakowski Algorithmus Analyse Johann Basnakowski Arbeitsbereich Wissenschaftliches Rechnen Fachbereich Informatik Fakultät für Mathematik, Informatik und Naturwissenschaften Universität Hamburg Gliederung Algorithmus

Mehr

Algorithmen und Datenstrukturen 1 Kapitel 5

Algorithmen und Datenstrukturen 1 Kapitel 5 Algorithmen und Datenstrukturen 1 Kapitel 5 Technische Fakultät robert@techfak.uni-bielefeld.de Vorlesung, U. Bielefeld, Winter 2005/2006 Kapitel 5: Effizienz von Algorithmen 5.1 Vorüberlegungen Nicht

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 32 Einstieg in die Informatik mit Java Effizienz Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 32 1 Überblick: was ist Effizienz? 2 Landau-Symbole 3 Eier im Korb 4

Mehr

Übung Algorithmen & Datenstrukturen

Übung Algorithmen & Datenstrukturen Übung lgorithmen & Datenstrukturen SS 2016 Kim Völlinger Übungstermine: Montag 09:00-11:00 RUD 26, 1'303, Marc Bux Montag 13:00-15:00 RUD 26, 1'305, Marc Bux Montag 13:00-15:00 RUD 26, 1'303, Florian Tschorsch

Mehr

Datenstrukturen: Mathematische Grundlagen. 26. Juli / 27

Datenstrukturen: Mathematische Grundlagen. 26. Juli / 27 Datenstrukturen: Mathematische Grundlagen 26. Juli 2015 1 / 27 Asymptotik Die Groß-Oh Notation: f = O(g) Es gibt eine positive Konstante c > 0 und eine natürliche Zahl n 0 N, so dass f (n) c g(n) für alle

Mehr

Übung Algorithmen und Datenstrukturen

Übung Algorithmen und Datenstrukturen Übung Algorithmen und Datenstrukturen Sommersemester 2016 Marc Bux, Humboldt-Universität zu Berlin Organisation Vorlesung: Montag 11 13 Uhr Marius Kloft RUD 26, 0 115 Mittwoch 11 13 Uhr Marius Kloft RUD

Mehr

Mathematische Grundlagen Kurz & Gut 1. 1 Frei nach Folien von Alex Schickedanz und David Veith

Mathematische Grundlagen Kurz & Gut 1. 1 Frei nach Folien von Alex Schickedanz und David Veith Mathematische Grundlagen Kurz & Gut 1 1 Frei nach Folien von Alex Schickedanz und David Veith Mathematische Grundlagen Kurz & Gut 1 Hinweise Hier werden Grundlagen der Datenstrukturen-Vorlesung rekapituliert.

Mehr

Algorithmen und Datenstrukturen Kapitel 2: Korrektheit von Algorithmen und Laufzeitanalyse rekursiver Algorithmen (mittels Rekurrenzgleichungen)

Algorithmen und Datenstrukturen Kapitel 2: Korrektheit von Algorithmen und Laufzeitanalyse rekursiver Algorithmen (mittels Rekurrenzgleichungen) Algorithmen und Datenstrukturen Kapitel 2: und Laufzeitanalyse rekursiver Algorithmen (mittels Rekurrenzgleichungen) Frank Heitmann heitmann@informatik.uni-hamburg.de 21. Oktober 2015 Frank Heitmann heitmann@informatik.uni-hamburg.de

Mehr

Einführung in die Informatik 2

Einführung in die Informatik 2 Einführung in die Informatik 2 Mathematische Grundbegriffe Sven Kosub AG Algorithmik/Theorie komplexer Systeme Universität Konstanz E 202 Sven.Kosub@uni-konstanz.de Sprechstunde: Freitag, 12:30-14:00 Uhr,

Mehr

Mathematik für Wirtschaftswissenschaftler. Universität Trier Wintersemester 2013 / 2014

Mathematik für Wirtschaftswissenschaftler. Universität Trier Wintersemester 2013 / 2014 Mathematik für Universität Trier Wintersemester 2013 / 2014 Inhalt der Vorlesung 1. Gleichungen und Summen 2. Grundlagen der Funktionslehre 3. Rechnen mit Funktionen 4. Optimierung von Funktionen 5. Funktionen

Mehr

Algorithmen und Datenstrukturen Kapitel 2: Korrektheit von Algorithmen und Laufzeitanalyse rekursiver Algorithmen (mittels Rekurrenzgleichungen)

Algorithmen und Datenstrukturen Kapitel 2: Korrektheit von Algorithmen und Laufzeitanalyse rekursiver Algorithmen (mittels Rekurrenzgleichungen) Algorithmen und Datenstrukturen Kapitel 2: und Laufzeitanalyse rekursiver Algorithmen (mittels ) Frank Heitmann heitmann@informatik.uni-hamburg.de 21. Oktober 2015 Frank Heitmann heitmann@informatik.uni-hamburg.de

Mehr

Algorithmen I. Tutorium 1-3. Sitzung. Dennis Felsing

Algorithmen I. Tutorium 1-3. Sitzung. Dennis Felsing Algorithmen I Tutorium 1-3. Sitzung Dennis Felsing dennis.felsing@student.kit.edu www.stud.uni-karlsruhe.de/~ubcqr/algo 2011-05-02 Überblick 1 Sortieren und Suchen 2 Mastertheorem 3 Datenstrukturen 4 Kreativaufgabe

Mehr

Diskrete Mathematik I Wintersemester 2007 A. May

Diskrete Mathematik I Wintersemester 2007 A. May Diskrete Mathematik I Wintersemester 2007 A. May Literatur Vorlesung richtet sich nach A. Steger: Diskrete Strukturen Band 1: Kombinatorik-Graphentheorie- Algebra Springer Verlag T. Schickinger, A. Steger:

Mehr

Komplexität eines Algorithmus, Grössenordnung, Landau-Symbole, Beispiel einer Komplexitätsberechnung (Mergesort) 7. KOMPLEXITÄT

Komplexität eines Algorithmus, Grössenordnung, Landau-Symbole, Beispiel einer Komplexitätsberechnung (Mergesort) 7. KOMPLEXITÄT Komplexität eines Algorithmus, Grössenordnung, Landau-Symbole, Beispiel einer Komplexitätsberechnung (Mergesort) 7. KOMPLEXITÄT Komplexität eines Algorithmus Algorithmen verbrauchen Ressourcen Rechenzeit

Mehr

Algorithmen und Datenstrukturen (für ET/IT)

Algorithmen und Datenstrukturen (für ET/IT) Algorithmen und Datenstrukturen (für ET/IT) Wintersemester 2012/13 Dr. Tobias Lasser Computer Aided Medical Procedures Technische Universität München Programm heute 1 Einführung 2 Mathematische Grundlagen

Mehr

6 Quicksort. die mittlere Laufzeit Θ(n log n) beträgt und. die in der asymptotischen Notation verborgenen Konstanten sehr klein sind.

6 Quicksort. die mittlere Laufzeit Θ(n log n) beträgt und. die in der asymptotischen Notation verborgenen Konstanten sehr klein sind. Algorithmen und Datenstrukturen 132 6 Quicksort In diesem Abschnitt wird Quicksort, ein weiterer Sortieralgorithmus, vorgestellt. Trotz einer eher langsamen Worst-Case Laufzeit von Θ(n 2 ) ist Quicksort

Mehr

Informatik II, SS 2014

Informatik II, SS 2014 Informatik II SS 2014 (Algorithmen & Datenstrukturen) Vorlesung 4 (7.5.2014) Asymptotische Analyse, Sortieren IV Algorithmen und Komplexität Erfahrungen 1. Übung C++ / Java sind komplett ungewohnt Struktur

Mehr

FAKULTÄT FÜR INFORMATIK

FAKULTÄT FÜR INFORMATIK TECHNISCHE UNIVERSITÄT MÜNCHEN FAKULTÄT FÜR INFORMATIK Lehrstuhl für Effiziente Algorithmen SS 2008 Grundlagen: Algorithmen und Datenstrukturen Midterm-Klausur Prof. Dr. Christian Scheideler, Dr. Stefan

Mehr

Algorithmen und Datenstrukturen SoSe 2008 in Trier. Henning Fernau Universität Trier

Algorithmen und Datenstrukturen SoSe 2008 in Trier. Henning Fernau Universität Trier Algorithmen und Datenstrukturen SoSe 2008 in Trier Henning Fernau Universität Trier fernau@uni-trier.de 1 Algorithmen und Datenstrukturen Gesamtübersicht Organisatorisches / Einführung Grundlagen: RAM,

Mehr

Informatik II, SS 2018

Informatik II, SS 2018 Informatik II - SS 2018 (Algorithmen & Datenstrukturen) Vorlesung 4 (30.4.2018) Sortieren IV Algorithmen und Komplexität Analyse Merge Sort Laufzeit T(n) setzt sich zusammen aus: Divide und Merge: O n

Mehr

1 Raumwechsel: Gr. 15 (Do 10-12, F-235) ab sofort in G Studie zum Arbeitsverhalten von Studierenden unter Leitung

1 Raumwechsel: Gr. 15 (Do 10-12, F-235) ab sofort in G Studie zum Arbeitsverhalten von Studierenden unter Leitung Organisatorisches Algorithmen und Datenstrukturen Kapitel 3: Divide & Conquer Frank Heitmann heitmann@informatik.uni-hamburg.de 1 Raumwechsel: Gr. 15 (Do 10-12, F-235) ab sofort in G-021. 2 Studie zum

Mehr