PTI06660 – Algorithmen und Datenstrukturen

Modul
Algorithmen und Datenstrukturen
Algorithms and Data Structures
Modulnummer
PTI06660
Version: 2
Fakultät
Physikalische Technik / Informatik
Niveau
Bachelor
Dauer
1 Semester
Turnus
Sommersemester
Modulverantwortliche/-r

Prof. Dr. Tina Geweniger
Tina.Geweniger(at)fh-zwickau.de

Dozent/-in(nen)

Prof. Dr. Tina Geweniger
Tina.Geweniger(at)fh-zwickau.de

Lehrsprache(n)

Deutsch
in "Algorithmen und Datenstrukturen"

ECTS-Credits

5.00 Credits

Workload

150 Stunden

Lehrveranstaltungen

4.00 SWS (3.00 SWS Vorlesung | 1.00 SWS Praktikum)

Selbststudienzeit

90.00 Stunden
45.00 Stunden Vor-/Nachbereitung - Algorithmen und Datenstrukturen
45.00 Stunden Selbststudium - Algorithmen und Datenstrukturen

Prüfungsvorleistung(en)

Praktikum (erfolgreiche Teilnahme)
in "Algorithmen und Datenstrukturen"

Belegarbeit und Projekt
in "Algorithmen und Datenstrukturen"

Prüfungsleistung(en)

schriftliche Prüfungsleistung
Modulprüfung | Prüfungsdauer: 120 min | Wichtung: 100%
in "Algorithmen und Datenstrukturen"

Medienform
Keine Angabe
Lehrinhalte/Gliederung
  • lgorithmen (iterative, rekursiv) und Laufzeitabschätzungen
  • Modellierungsmethoden, Pseudocode, Algorithmierung
  • Abstrakte Datentypen (Menge, Abbildung, Stack, Queue, Priority-Queue)
  • lineare Datenstrukturen: Folgen, Listen, Hash-Tabellen
  • hierarchische Datenstrukturen: Bäume, binäre Suchbäume, 2-3-Bäume, AVL-Bäume, Heaps
  • Sortierverfahren (Bubble-, Selection-, Insertion-, Merge-, Quick-, Radix-, Heapsort)
  • Graphalgorithmen (Zusammenhangskomponenten, Minimalgerüste, kürzeste Wege)
  • Pattern-Matching-Algorithmen (Boyer-Moore-, Knuth-Morris-Pratt-Verfahren)
  • Algorithmentypen (Branch and Bound, Backtracking, Divide and Conquer, Monte Carlo, Heuristiken, Brute Force)
  • Grundbegriffe der Kryptographie, symmetrische und asymmetrische Verschlüsselung, Verwaltung von Sicherheitszertifikaten
Qualifikationsziele

Die Studierenden kennen die grundlegenden Datenstrukturen und Algorithmen und können sie auf bekannte Problemklassen anwenden. Bekannte Algorithmen können die Studierenden für neue Problemklassen modifizieren.

Die Studierenden sind in der Lage, Algorithmen hinsichtlich Ihrer Komplexität zu beurteilen. Sie wenden dabei die grundlegenden Regeln für die Einordnung in Komplexitätsklassen an.

Die Studierenden sollen Grundkenntnisse in der Algorithmenkonstruktion erwerben und in praktischen Problemstellungen anwenden. Zudem sollen sie Studierenden in den Praktika das Implementieren von Algorithmen üben und Sicherheit beim Umgang mit der Programmiersprache Java und den entsprechenden Softwarewerkzeugen erlangen.

Die Studierenden kennen Grundbegriffe und grundlegende Methoden der Kryptographie. Sie können die Grundprinzipien der Kryptographie in einfachen Szenarien anwenden.

Besondere Zulassungsvoraussetzung

keine

Empfohlene Voraussetzungen

Grundlagen der Programmierung

Fortsetzungsmöglichkeiten
Keine Angabe
Literatur
  • Robert Sedgewick: Algorithmen in Java (Teil 1-4), Pearson Studium, 2003, 3. Auflage, 816 Seiten, ISBN: 978-3827370723
  • Gunter Saake, Kai Uwe Sattler: Algorithmen und Datenstrukturen: Eine Einführung mit Java, dpunkt-Verlag, 2006, 3. Auflage, 512 Seiten, ISBN: 978-3898643856.
  • Wolfgang Ertel: Angewandte Kryptographie, Hanser Verlag, 3. Auflage, 2007, ISBN: 978-3-446-41195-1.
Hinweise
Keine Angabe