URL study guide

https://tue.osiris-student.nl/onderwijscatalogus/extern/cursus?cursuscode=2IL50&collegejaar=2025&taal=en

Omschrijving

Design techniques: Incremental algorithms, recursion, divide & conquer. Correctness: induction and invariants. Efficiency analysis: O-notation, recurrences. Sorting: MergeSort, InsertionSort, HeapSort, sorting in linear time, lower bounds for sorting. Selection Algorithms. Data structures: abstract data structures, heaps, hash tables, search trees (incl. red-black trees), augmenting data structures, union-find. Basic graph algorithms: adjacency list, adjacency matrix, DFS, BFS, topological sort, minimum spanning trees.

Doelstellingen

Learning goals: There are many aspects to the study of data structures, and the algorithms that operate upon them. In this course, the student will learn the basic skills and knowledge to develop efficient algorithms to solve computational problems and to make informed choices between different solutions for the same problem.
Learning Outcomes: After completing the course, you have a working knowledge of
  1. fundamental data structures: heaps, hash tables, binary search trees, and union-find;
  2. basic sorting algorithms such as InsertionSort, MergeSort, and QuickSort;
  3. basic graph algorithms such as minimum spanning trees, breadth- and depth-first search, and topological sorting.
Furthermore, you can
  1. apply basic algorithm design techniques (incremental, recursive, divide-and-conquer);
  2. use standard proof techniques (induction, invariants) to establish the correctness of algorithms;
  3. characterize the efficiency of algorithms by performing a worst-case asymptotic analysis
  4. use the skills above to make informed choices between different solutions for the same computational problem.

Beoordelingsmethode

Written examination using notebook
Cursusperiode1/09/1231/08/26
CursusniveauVerdiepend
CursusformaatCursus