Algorithms and Datastructures - Conditional Course
Summer Term 2022
Fabian Kuhn
Course Description
This lecture revolves around the design and analysis of algorithms. We will discuss the concepts and principles of a selection of the very basic but most commonly used algorithms and datastructures. Topics will include for example: Sorting, searching, hashing, search-trees, (priority-)queues and graphalgorithms (like shortest paths, spanning trees breadth-first- and depth-first-searches).
Schedule
There will be an introductory session on Wednesday, 27th of April 16:15 - 18:00. The session will take place online via the conference system Zoom. Details on how to access the Zoom meeting are given further below.
There will be a pre-recorded online lecture combined with an interactive exercise lesson. The recorded lectures is available on a separate page. The interactive session takes places on Wednesdays 16:15 - 18:00 via Zoom. Details on how to access the Zoom meeting are given in the further below.
Note: There is no exercise session on June 15th.
Details for Online Events
Zoom: All details for the weekly Zoom meeting are given on a seperate website. Important note: This website can only be accessed from within the university network. This can be done either by accessing the internet via the university eduroam, or by establishing a VPN tunnel to the university network. Note that you have to cancel the VPN tunnel again before you enter the Zoom meeting.
Zulip: We also use Zulip for communication among students and teaching staff. Zulip can be seen as a mixture of instant messenger and a classical forum. The link is also given on this website. Important note: Again: This website can only be accessed from within the university network or via VPN.
Video Lecutres: The recorded lectures will be published on the following page: Recordings and Slides
Exercises
The exercises will be conducted online with the course management system Daphne. There will be theoretical and programming exercises.
Submission of Exercises
Handing in exercises is voluntary, but we highly recommend doing it. If you want feedback to your solutions, you must submit them by Wednesday, 4 pm (the week after it has been released).
The exercises are conducted via the course management system Daphne. There will be theortical and programming parts.
The submission works as follows: For each exercise sheet, create a subfolder exercise-xy in your SVN repository where xy is the number of the exercise sheet (one-digit numbers with a leading zero, i.e., 01, 02,...). Upload your exercises (theoretical and programming) into that folder. Your programming exercises must be uploaded directly into this folder (no subfolder) to be checked automatically by Jenkins (More details are given on this separate page).
Solutions to theoretical exercises can be written in Latex (preferred), Word (or similar text programs) or handwritten scans which must be well readable. Here you can find a more detailed description how to submit solutions to programming tasks.
Literature
- Introduction to Algorithms (3rd edition); T. Cormen, C. Leiserson, R. Rivest, C. Stein; MIT Press, 2009
- Algorithms and Data Structures; K. Mehlhorn und P. Sanders; Springer, 2008, available online
- Lectures on MIT Courseware:
Introduction to Algorithms 2005 und Introduction to Algorithms 2011