Algorithms and Data Structures II
Syllabus, Bachelor's level, 1DL231
- Education cycle
- First cycle
- Main field(s) of study and in-depth level
- Computer Science G2F
- Grading system
- Fail (U), Pass (3), Pass with credit (4), Pass with distinction (5)
- Finalised by
- The Faculty Board of Science and Technology, 24 April 2013
- Responsible department
- Department of Information Technology
60 credits including at least 15 credits in mathematics and 30 credits in computer science including Algorithms and Data Structures I.
In order to pass, the student must be able to
- use the notation of asymptotic growth of functions and be able to use this notation to describe the complexity of algorithms and computational problems
- derive equations for the complexity of algorithms and solve such equations
- work with common algorithmic techniques such as dynamic programming, greedy algorithms, etc.
- deal with basic problems using graph algorithms, string matching and flow networks.
- define the complexity classes P and NP, and discuss the open question whether P=NP.
- present and discuss topics related to the course content orally and in writing with a skill appropriate for the level of education.
Asymptotic notation and recurrence equations. Data structures for disjoint sets. Dynamic programming. Greedy algorithms. Graph algorithms such as shortest path and minimum spanning tree. Maximum flow problem in flow networks. Algorithms for string matching. Theory of intractable problems.
Lectures, lessons, and exercises.
Written exam (3 credits). Assignments (2 credits).
- Reading list valid from Autumn 2022, version 2
- Reading list valid from Autumn 2022, version 1
- Reading list valid from Autumn 2019
- Reading list valid from Autumn 2017
- Reading list valid from Spring 2013
- Reading list valid from Autumn 2012, version 3
- Reading list valid from Autumn 2012, version 2
- Reading list valid from Autumn 2012, version 1