PTI06210 – Algorithms and Data Structures

Module
Algorithms and Data Structures
Algorithmen und Datenstrukturen
Module number
PTI06210
Version: 1
Faculty
Physikalische Technik / Informatik
Level
Bachelor
Duration
1 Semester
Semester
Summer semester
Module supervisor
Lecturer(s)
Course language(s)

German
in "Algorithmen und Datenstrukturen"

ECTS credits

6.00 credits

Workload

180 hours

Courses

5.00 SCH (3.00 SCH Vorlesung | 1.00 SCH Seminar | 1.00 SCH Internship)

Self-study time

105.00 hours
45.00 hours Self-study - Algorithmen und Datenstrukturen
60.00 hours Vor-/Nachbereitung - Algorithmen und Datenstrukturen

Pre-examination(s)

Attestation
in "Algorithmen und Datenstrukturen"

Examination(s)

schriftliche Prüfungsleistung
Module examination | Examination time: 120 min | Weighting: 100%
in "Algorithmen und Datenstrukturen"

Media type
No information
Instruction content/structure
  • Algorithmen und Datenstrukturen:
    Algorithmen (iterativ, rekursiv) und Laufzeitabschätzungen
    Sortierverfahren (Bubble-, Selection-, Insertion-, Merge-, Quick-, Heapsort)
    Abstrakte Datentypen (Menge, Abbildung, Stack, Queue, Priority-Queue) und verschiedene Implementierungen dafür
    lineare Datenstrukturen: Folgen, Listen, Hash-Tabellen
    hierarchische Datenstrukturen: Bäume, binäre Suchbäume, 2-3-Bäume, AVL-Bäume, Heaps
    Graphalgorithmen (Zusammenhangskomponenten, Minimalgerüste, kürzeste Wege)
    Pattern-Matching-Algorithmen (Boyer-Moore-, Knuth-Morris-Pratt-Verfahren)
  • Kryptographische Verfahren:
    Symmetrische Verschlüsselung: klassische Verfahren, One-Time-Pad, AES, Schlüsselaustauschproblem
    Block- und Stromchiffren, Betriebsmodi für Blockchiffren
    Asymmetrische Verschlüsselung, Schlüsselerzeugung nach Diffie-Hellman, Verschlüsselung nach ElGamal, RSA
    Kryptographische Hashfunktionen
    Digitale Signaturen, Zertifikate
Qualification objectives

Die Studierenden können algorithmisch denken, mit Abstraktionskonzepten arbeiten und praktische Probleme algorithmisch lösen.

Sie beherrschen den Entwurf von Algorithmen und Datenstrukturen sowie die Analyse von Struktur und Verhalten von Algorithmen. Sie beherrschen Prinzipien für den systematischen Algorithmenentwurf, Konzepte zur Modellierung komplexer Datenstrukturen und kennen wichtige Standardalgorithmen. Sie können die Laufzeit von Algorithmen bestimmen. Sie wissen, dass die Effizienz von Verfahren von der Wahl der verwendeten Datenstrukturen abhängt.

Die Studierenden kennen kryptographische Verfahren zur symmetrischen und asymmetrischen Verschlüsselung und digitalen Signaturen zum Schutz von Informationen.

Special admission requirements

keine

Recommended prerequisites

Inhalte entsprechend Modul
PTI620 Diskrete Mathematik und Logik
Beherrschen einer Programmiersprache (z. B. aus PTI600/PTI602 Programmierung 1)

Continuation options
No information
Literature
  • Cormen, Leiserson, Rivest, Stein: Algorithmen - Eine Einführung, Oldenbourg, 2007
  • Sedgewick: Algorithmen in Java Grundlagen, Datenstrukturen, Sortieren, Suchen. Teil 1-4, Pearson Studium, 2003
  • Güting, Diekert: Datenstrukturen und Algorithmen, Teubner, 2003
  • Ertel: Angewandte Kryptografie. Hanser 2007
  • Schneier: Angewandte Kryptographie, Pearson, 2005
Notes
No information