Die Lehrveranstaltung vermittelt Theorie und Praxis der Programmierung von Software am Beispiel der Sprachen C, Java und Prolog.
Diskutiert werden Algorithmen und Datenstrukturen zum Sortieren und Suchen, Algorithmen und Datenstrukturen zur Implementierung objekt-orientierter Sprachen sowie die deklarative Programmierung. Diese Inhalte werden im allgemeineren Kontext der Softwareproduktion eingebettet.
Operatoren in C | 01:30:42 | |
---|---|---|
Überleitung | 00:05:00 | |
Ausdrücke | 00:18:31 | |
Speicherverwaltung | 00:14:36 | |
Zeichenkettenverarbeitung | 00:17:55 | |
Ein/Ausgabe | 00:08:28 | |
Unformatierte Ausgabe | 00:14:24 | |
Arbeitsweise des Präprozessors | 00:13:13 |
Freispeicherverwaltung | 01:26:43 | |
---|---|---|
Arbeitsweise des Präprozessors | 00:08:46 | |
Bibliotheken | 00:09:19 | |
Überleitung | 00:11:48 | |
Darstellung von Objektzustand | 00:12:00 | |
Speicherblöcke | 00:19:29 | |
Alokator für Objekte fester Größe | 00:13:56 | |
Übersetzung | 00:12:52 |
Spätes Binden | 01:26:46 | |
---|---|---|
Allozierung | 00:06:38 | |
Struktur eines Freispeicherblocks | 00:12:21 | |
Deallokation | 00:13:38 | |
Multi-Methoden | 00:05:01 | |
Realisierung von Vererbung | 00:17:54 | |
Realisierung von virtuellen Methoden | 00:14:43 | |
Funktionszeiger | 00:17:56 |
Automatische Speicherverwaltung | 01:25:16 | |
---|---|---|
Wiederholung Debugger | 00:07:42 | |
Speichermuell | 00:09:10 | |
Erreichbarkeit und Lebendigkeit | 00:06:14 | |
Referenzzählung | 00:14:06 | |
Mark-and-Sweep GC | 00:12:55 | |
Copying GC | 00:09:56 | |
Varianten | 00:15:08 |
Analyse von Algorithmen | 01:27:13 |
---|
Datentypen | 01:28:13 | |
---|---|---|
Beispiel: Binaere Suche | 00:18:55 | |
Datentypen in Java | 00:18:07 | |
Mengenkonstruktionen | 00:07:15 | |
Java.util.Collection | 00:08:55 | |
Ordnungsrelationen | 00:09:41 | |
Java.util.List 1 | 00:12:50 | |
Java.util.List | 00:13:51 |
Modultests | 01:21:39 | |
---|---|---|
java.util.List | 00:17:06 | |
java.util.Map | 00:15:21 | |
Collections im Überblick | 00:08:58 | |
Ziele | 00:17:04 | |
Begriffe | 00:09:16 | |
Bestimmung des Testergebnisses | 00:15:04 |
Sortieren: Einfache Algorithmen | 01:23:23 | |
---|---|---|
Sortieren | 00:29:01 | |
Selection Sort | 00:13:14 | |
Selection Sort (2) | 00:02:57 | |
Insertion Sort | 00:18:05 | |
Insertion Sort (2) | 00:06:56 | |
Bubble Sort | 00:08:40 | |
Komplexität der einfachen Algorithmen | 00:05:53 |
Sortieren: Einfache Algorithmen (2) | 01:31:46 | |
---|---|---|
Komplexität (2) | 00:02:13 | |
Shellsort | 00:17:41 | |
Sortieren verketteter Listen | 00:12:26 | |
Quicksort | 00:19:13 | |
Analyse Quicksort | 00:24:28 | |
Mischen | 00:10:15 | |
Top-Down Mergesort | 00:06:54 |
Mergesort | 01:26:07 | |
---|---|---|
Diskussion Übungsaufgabe | 00:08:14 | |
Top-Down Mergesort | 00:10:58 | |
Mischen ohne Kopieren | 00:08:56 | |
Bottom-Up Mergesort | 00:06:54 | |
Priority Queue | 00:15:00 | |
Implementierungsvarianten | 00:06:28 | |
Heaps | 00:19:02 | |
Heapsort | 00:12:14 |
String Hashing | 01:13:01 | |
---|---|---|
String Hashing 2 | 00:11:45 | |
String Hashing 3 | 00:18:46 | |
Perfektes Hashing | 00:11:49 | |
Statisches Hashing | 00:07:33 | |
Lineares Sondieren | 00:07:24 | |
Quadratisches Sondieren | 00:07:53 | |
Dynamische Hashtabellen | 00:09:15 |
Bäume | 01:29:45 | |
---|---|---|
Splay Trees | 00:03:57 | |
2-3-4-Bäume | 00:13:24 | |
Rot-Schwarz-Bäume | 00:11:52 | |
AVL-Bäume | 00:23:33 | |
Hash-Tabellen/Überblick | 00:09:20 | |
Hashfunktionen | 00:17:55 | |
String-Hashing | 00:11:08 |
Einführung in Prolog | 01:30:07 | |
---|---|---|
Code-Durchsicht | 00:09:20 | |
Arbeitsweise des Gutachters | 00:06:10 | |
Ergebnisse | 00:01:49 | |
Übersicht Prolog | 00:17:09 | |
Programmieren in Prolog | 00:06:20 | |
Fakten | 00:19:19 | |
Regeln | 00:06:21 | |
Strukturen | 00:20:17 | |
Operatoren | 00:05:13 |
Arithmetik | 01:03:54 | |
---|---|---|
Arithmetik | 00:12:47 | |
Listenoperationen | 00:18:19 | |
Generatoren | 00:09:53 | |
Anwendungen des Cut | 00:23:40 |
Graph-Algorithmen | 01:25:37 | |
---|---|---|
Anwendungen des Cut: Negation | 00:11:26 | |
Zur Übungsaufgabe | 00:09:31 | |
Graph-Algorithmen/Anwendungsgebiete | 00:10:04 | |
Graphen | 00:12:28 | |
Graphen (3) | 00:16:11 | |
Graph als Abstrakter Datentyp | 00:11:31 | |
Darstellung von Graphen | 00:15:36 |
Zufallszahlen | 01:27:36 | |
---|---|---|
Start | 00:00:58 | |
Hamilton-Pfad | 00:13:43 | |
Graph-Probleme | 00:25:29 | |
Echter Zufall und Pseudozufall | 00:12:45 | |
Pseudozufallzahlen: Güterforderungen | 00:13:41 | |
Erste Versuche | 00:14:29 | |
Mersene-Twister | 00:07:53 |
Zufallszahlen 2 | 01:02:57 | |
---|---|---|
Statistischer Test | 00:11:26 | |
Kolmogorov-Smirnov-Test | 00:08:18 | |
Diehard Tests | 00:10:41 | |
Travel-Ticket-Systeme | 00:16:57 | |
Relationale Datenbanken | 00:12:37 |
Wiederholung | 00:38:00 | |
---|---|---|
Praktische Informatik | 00:10:25 | |
Shellsort | 00:14:00 | |
Shellsort 2 | 00:14:11 |