The course covers data structures and techniques for constructing efficient algorithms, including their analysis with respect to efficiency. It stresses the importance of adapting standard algorithms and data structures to the peculiarities of both the given problem and the underlying hardware, because efficiency does not only depend on the intrinsic asymptotic efficiency of an algorithm, but also on the context in which it is applied.
Typical algorithmic techniques are divide-and-conquer, greedy methods, and dynamic programming. As efficient data structures form the basis for many of these techniques, important data structures, their analysis and advantages and disadvantages depending on circumstances are covered as well. Examples of data structures to be covered are heaps, disjoint sets, and tree data structures.
At least 90 ECTS, including 60 ECTS Computing Science, or at least 120 ECTS within a study programme. At least 7.5 ECTS programming; 7.5 ECTS data structures and algorithms; 7.5 ECTS discrete mathematics; and 7.5 ECTS formal languages. Proficiency in English equivalent to the level required for basic eligibility for higher studies.
Academic credits
Applicants in some programs at Umeå University have guaranteed admission to this course. The number of places for a single course may therefore be limited.
Application code
UMU-57209
Application
Application deadline was
15 April 2024.
The application period is closed.
Application and tuition fees
As a citizen of a country outside the European Union (EU), the European Economic Area (EEA) or Switzerland, you are required to pay application and tuition fees for studies at Umeå University.