052100 VU Algorithms and Data Structures 2 (2021S)
Continuous assessment of course work
Labels
ON-SITE
Registration/Deregistration
Note: The time of your registration within the registration period has no effect on the allocation of places (no first come, first served).
- Registration is open from Mo 15.02.2021 09:00 to Mo 22.02.2021 09:00
- Deregistration possible until Su 14.03.2021 23:59
Details
max. 25 participants
Language: English
Lecturers
Classes (iCal) - next class is marked with N
IMPORTANT: This is a second course on algorithms at University of Vienna, and hence has the following prerequisites.
1) Discrete mathematics: a one semester course, equivalent to 051110 VO Mathematical Foundations of Computer Science 1 at University of Vienna covering the following topics. Set theory, functions and relations, combinatorics (counting), applications of pigeonhole principle, etc., several proofs using the principle of mathematical induction, graph theory, probability theory, and linear algebra
This quiz is COMPULSORY.Note the following:
This is a mathematical course, and we will be focusing on mathematical proofs. Appropriate level of mathematical background is assumed. The main aim is to develop mathematical intuition with respect to algorithm analysis by doing several mathematical proofs. At the end of the course, you should be able to not only recognize correct mathematical proofs but also be able to come up with your own mathematical proofs of correctness of an algorithm and its running time.
- Monday 01.03. 09:45 - 11:15 Digital
- Monday 08.03. 09:45 - 11:15 Digital
- Monday 15.03. 09:45 - 11:15 Digital
- Monday 22.03. 09:45 - 11:15 Digital
- Monday 12.04. 09:45 - 11:15 Digital
- Monday 19.04. 09:45 - 11:15 Digital
- Monday 26.04. 09:45 - 11:15 Digital
- Monday 03.05. 09:45 - 11:15 Digital
- Monday 10.05. 09:45 - 11:15 Digital
- Monday 17.05. 09:45 - 11:15 Digital
- Monday 31.05. 09:45 - 11:15 Digital
- Monday 07.06. 09:45 - 11:15 Digital
- Monday 14.06. 09:45 - 11:15 Digital
- Monday 21.06. 09:45 - 11:15 Digital
-
Monday
28.06.
09:45 - 11:15
Hörsaal 14 Oskar-Morgenstern-Platz 1 2.Stock
Hörsaal 2, Währinger Straße 29 2.OG
Hörsaal 3, Währinger Straße 29 3.OG
Seminarraum 10, Währinger Straße 29 2.OG
Information
Aims, contents and method of the course
Assessment and permitted materials
Two quizzes, each worth 10 points
Two homeworks, each worth 5 points
Either a final exam or a project depending on the pandemic situation, worth 30 points.
Bonus points: Compulsory prerequisites quiz, 2 points and class participation, 8 points.Exams/quizzes will be closed book, closed notes, and no resources/help from the Internet allowed.Further details will be added soon.
Two homeworks, each worth 5 points
Either a final exam or a project depending on the pandemic situation, worth 30 points.
Bonus points: Compulsory prerequisites quiz, 2 points and class participation, 8 points.Exams/quizzes will be closed book, closed notes, and no resources/help from the Internet allowed.Further details will be added soon.
Minimum requirements and assessment criteria
percentage of points grade
>= 89% 1
>= 76% 2
>= 63% 3
>= 50% 4
< 50% 5
>= 89% 1
>= 76% 2
>= 63% 3
>= 50% 4
< 50% 5
Examination topics
Everything covered in the lectures, the homework problems, the slides, and the reading material
Reading list
Will be provided on Moodle.
Association in the course directory
Module: CNA
Last modified: Fr 12.05.2023 00:13
1) Discrete mathematics: a one semester course, equivalent to 051110 VO Mathematical Foundations of Computer Science 1 at University of Vienna covering the following topics. Set theory, functions and relations, combinatorics (counting), applications of pigeonhole principle, etc., several proofs using the principle of mathematical induction, graph theory, probability theory, and linear algebra2) Basic algorithms analysis and discrete structures: a one semester course, equivalent to 051024 VU Algorithms and Data Structures 1 at University of Vienna covering the following topics. Big-O notation and asymptotic analysis; lists, stacks, and queues and their applications; trees and binary trees: tree traversals (inorder, preorder, postorder); graphs: adjacency list and adjacency matrix representations, depth-first search, breadth first-search, minimum spanning tree algorithms, etc.; searching and sorting algorithms; divide and conquer algorithmsWe need to start with a common minimum knowledge and be familiar with the mathematical/algorithmic language and notation. We will have a quiz at the end of the first lecture that will give you an idea of how much comfortable you are with these prerequisites.This is a mathematical course, and we will be focusing on mathematical proofs. Appropriate level of mathematical background is assumed. The main aim is to develop mathematical intuition with respect to algorithm analysis by doing several mathematical proofs. At the end of the course, you should be able to not only recognize correct mathematical proofs but also be able to come up with your own mathematical proofs of correctness of an algorithm and its running time.
We will not do any programming.Contents:
How to do rigorous proofs: mathematical logic and induction.
Algorithmic strategies: recursion (backtracking, branch and bound, heuristics, reduction transform and conquer), dynamic programming, and greedy algorithms (focus on dynamic programming and greedy algorithms)
Hashing; pattern matching and string algorithms
Advanced data structures and algorithms: network flows and geometric algorithms