INF5010 Algorithmique et structures de données (3 crédits)

Notion d'algorithme comme ensemble de règles opératoires pour résoudre un problème en un nombre fini d’opérations. Complexité d’un algorithme. Structures de contrôle en pseudo-code, C/C++ et Java. Structures séquentielles et structures arborescentes; les principaux algorithmes liés à ces structures. Les différentes techniques d'implantation de ces structures : avantages et inconvénients. Utilisation des structures : les principaux algorithmes de tri. Généralités et méthodes simples; les méthodes efficaces et les mesures et comparaisons entre ces algorithmes. Les principes de la recherche d'informations. Utilisation de structures arborescentes pour la recherche. Recherche utilisant la notion de hachage : principes et méthodes de résolution des collisions.