700.842 (23S) Algorithms and Data Structures
Überblick
- Lehrende/r
- LV-Titel englisch Algorithms and Data Structures
- LV-Art Übung (prüfungsimmanente LV )
- LV-Modell Präsenzlehrveranstaltung
- Semesterstunde/n 2.0
- ECTS-Anrechnungspunkte 4.0
- Anmeldungen 19
- Organisationseinheit
- Unterrichtssprache Englisch
- LV-Beginn 10.03.2023
- eLearning zum Moodle-Kurs
Zeit und Ort
LV-Beschreibung
Intendierte Lernergebnisse
Building on the knowledge of the "Introduction to Structured and Object-Oriented Programming" (ISOP), the handling of data structures and algorithms of greater structural complexity is to be trained.
Students gain knowledge of cost estimation, complexity measures, basics of advanced data structures, search and sorting methods, and basic graph and optimization algorithms. This will enable them to design or select algorithms and suitable data structures for given problems and to evaluate the performance behavior.
Based on the material explained in the lecture (VO), the exercises (UE) deepen the lecture material and should help to perform the construction and analysis of algorithms. Some of the presented data structures or algorithms are to be implemented exemplarily in Java, and handed-in on the department's server. In addition to this basic goal of the course, selected implementation examples serve to consolidate the programming knowledge acquired in ISOP.
Lehrmethodik
Discussion of the exercise tasks, presentation including discussion of solutions by the students.
Exchange & peer walk-through of programming solutions.
Inhalt/e
- Introduction: Algorithm, (un)decidability, efficiency, complexity
- Elementary data structures
- Elementary algorithms
- Divide & conquer
- Sorting and searching
- Hashing
- Graphs and advanced trees
- String matching
- Data communication: Compression, error detection & correction, encryption
- Outlook: Classes P & NP
Erwartete Vorkenntnisse
Programming at ISOP level
Literatur
Any textbook on Algorithms & Data Structures, e.g.,
T.H. Cormen, C.E. Leiserson, C. Stein, R.L. Rivest: Introduction to Algorithms, MIT Press, 3rd ed. (2009) or 4th ed. (2022).
S. Dasgupta, C. Papadimitrou, U. Vazirani: Algorithms, McGraw-Hill (2008).
R. Sedgewick, K. Wayne: Algorithms, Addison-Wesley, 4th ed. (2011).
M.T. Goodrich, R. Tamassia, M.H. Goldwasser: Data Structures and Algorithms in Java, Wiley, 6th ed. (2014).
Prüfungsinformationen
Prüfungsmethode/n
Examination-immanent course.
Bonus points:
- 40 % "Crossing lists" – 40 points max.: (# "crossed points" of prepared tasks) / (# "crossing points" of all tasks) × 40
- 60 % Presentation of solutions, competitions, peer walk-throughs etc. – 60 points max.: (# points earned) / (# points of 25 % quantile of all students) × 60
Malus points:
- Unexcused absence: 3 % (first absence is "free")
- Not / incorrectly solved examples: "Crossing points" are cancelled and deducted
Prüfungsinhalt/e
- Handed-in solution of exercise tasks
- Presentation of solutions of exercise tasks
- Part-taking in competitions
- Reports of peer walk-throughs
- Ad-hoc contributions
Beurteilungskriterien/-maßstäbe
- Handed-in solutions of exercise tasks must be genuine work (no copy & paste)
- Handed-in solutions of exercise tasks must be grosso modo correct
- Presentation of solutions must be understandable by audience
Grading key:
Grade | from |
5 | 0 % |
4 | 50 % |
3 | 63 % |
2 | 76 % |
1 | 89 % |
Beurteilungsschema
Note BenotungsschemaPosition im Curriculum
- Bachelorstudium Robotics and Artificial Intelligence
(SKZ: 295, Version: 22W.1)
-
Fach: Computer Science and Softwaredevelopment
(Pflichtfach)
-
3.3 Algorithms and Data Structures (
2.0h UE / 4.0 ECTS)
- 700.842 Algorithms and Data Structures (2.0h UE / 4.0 ECTS)
-
3.3 Algorithms and Data Structures (
2.0h UE / 4.0 ECTS)
-
Fach: Computer Science and Softwaredevelopment
(Pflichtfach)
Gleichwertige Lehrveranstaltungen im Sinne der Prüfungsantrittszählung
-
Sommersemester 2024
- 620.251 UE Algorithmen und Datenstrukturen (2.0h / 4.0ECTS)
- 620.252 UE Algorithmen und Datenstrukturen (2.0h / 4.0ECTS)
- 620.253 UE Algorithmen und Datenstrukturen (2.0h / 4.0ECTS)
- 620.254 UE Algorithmen und Datenstrukturen (2.0h / 4.0ECTS)
- 700.841 UE Algorithms and Data Structures (2.0h / 4.0ECTS)
- 700.842 UE Algorithms and Data Structures (2.0h / 4.0ECTS)
- 700.843 UE Algorithms and Data Structures (2.0h / 4.0ECTS)
- Sommersemester 2023
- Sommersemester 2022
- Sommersemester 2021
- Sommersemester 2020
- Sommersemester 2019
- Sommersemester 2018
- Sommersemester 2017
- Sommersemester 2016
- Sommersemester 2015
- Sommersemester 2014
- Sommersemester 2013
- Sommersemester 2012
- Sommersemester 2011
- Sommersemester 2010
-
Sommersemester 2009
- 620.252 UE Algorithmen und Datenstrukturen (1.0h / 2.0ECTS)
- 620.253 UE Algorithmen und Datenstrukturen (1.0h / 2.0ECTS)
- 620.254 UE Algorithmen und Datenstrukturen (1.0h / 2.0ECTS)
- 620.255 UE Algorithmen und Datenstrukturen (1.0h / 2.0ECTS)
- 620.256 UE Algorithmen und Datenstrukturen (Ergänzende Übung) (1.0h / 2.0ECTS)