Algorithm Engineering and Data Structures

Public Concerné

Basic algorithms and data structures, Programming, Basic algebra and probability.

Objectifs pédagogiques

The goal of the course is to teach students how to design and analyze advanced algorithms and data structures for the efficient solution of combinatorial problems involving high volumes of basic data types, such as integers, strings, trees, and graphs. 

Contenu de la formation

The design and analysis of advanced algorithms and data structures will involve basic data types (such as integers, strings, trees, and graphs) and several models of computation - such as RAM, 2-level memory, cache-oblivious, streaming - in order to take into account the architectural features and the memory hierarchy of modern PCs and the availability of Big Data upon which those algorithms could work on. Engineering considerations spurring from the implementation of the proposed algorithms and from experiments published in the literature will be also discussed.
 
Topics:
  • Sorting and Permuting atomic items in a disk-based setting: Multi-way mergesort, multi-way quicksort
  • Sorting strings: Multi-key quicksort, LSD-radix sort, MSD-radix sort
  • Randomised sampling in a streaming scenario
  • Hashing: universal, perfect, minimal ordered and perfect, Bloom filters
  • Randomized data structures: Treaps and skip lists
  • String data structures: Tries, Ternary search trees, Patricia Tries, Suffix arrays and suffix trees
  • Prefix- and substring-based searches over textual collections
  • Data compression: Integer codes, Elias-Fano coding, Canonical Huffman coding, Arithmetic coding, Lempel-Ziv parsing (gzip), Burrows-Wheeler Transform (bzip)

Description des modalités de validation

Written exam

En alternance ou en formation continue en journée :

Merci de consulter directement le secrétariat pédagogique de votre formation pour obtenir le planning.

En formation « à la carte Hors Temps de Travail », en présentiel, à distance ou hybride :

Voir les dates, les lieux d'enseignement et les modalités d'inscription sur les sites internet des centres régionaux qui proposent cette formation.

    Code : USEEU5
    6
    crédits