Unité d’enseignement L3 Algorithmique (ALGO 5) Equipe pédagogique: Jean-Marc Vincent (resp cours) Anne Rasse (coord. TD1) Gwenaël Delaval (coord. TD2) Serveur Web : consulter le placard électronique de l’UFR Mail : Pré[email protected] Objectifs de l’UE ALGO 5 Savoir proposer une solution algorithmique à un problème, savoir l'implanter et savoir l'analyser. • Savoir reconnaître et mettre en œuvre des schémas génériques d’algorithmes (séquence, arbre, graphe...), • Savoir analyser le coût des algorithmes et de leur programmation • Savoir construire une solution selon une démarche allant du plus simple (algorithme naïf) au plus efficace (diviser pour régner, etc.) • Savoir comment évaluer la complexité d'une solution algorithmique: • analyser la complexité au pire, en moyenne avec des hypothèses probabilistes, • analyser la complexité en utilisant des mesures sur des simulations ou des jeux de test Organisation du module Cours 1h30 TD 1 1h30 Activité de l’étudiant APNEES 6-7 sujets TD 2 1h30 Evaluation du travail (AP1) Contrôle continu : Exercices à la maison (pour préparer quick et examen) 2 quicks (semaines 6 et 9 (environ) ) Apnee : 5-6 comptes rendus Examen : 2h sans document ni calculatrice Coefficients : CC = 0.5 *moyenne apnee + 0.5*moyenne quick (à confirmer) Examen=0.7 Session de rattrapage : Juin Thèmes abordés dans le cours Complexité des algorithmes Types abstraits élémentaires et implémentation Séquences Piles, files Files à priorité et tas Arbres binaires de recherche Types abstraits complexes : Dictionnaires arborescents Tables de hachage Arbres de recherche, Parcours d’arbre Problèmes typiques abordés : recherche d’information, tri, traitement de chaînes de caractères, géométrie algorithmique,… Plan du cours (provisoire) 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. Présentation des objectifs du cours, coût d'algorithme, Analyse d'algorithme Complexité en moyenne Types abstraits, spécification, description, types simples, tableaux, listes Tables de hachage Hachage (suite) pile, file, file à priorité QUICK => tables, structures séquentielles,… Arbres binaires, arbres binaires de recherche VACANCES du 25/10 au 01/11 Arbres binaires et codage Arbres partiellement ordonnés et tas Exemple : arbres, enrichissement de structures … QUICK => arbres, parcours Exemple : arbres 2-D, B-arbres, quad-tree, Bibliographie du cours Ouvrage de base : Introduction à l’algorithmique par Cormen, Leisserson, Rivest et Stein Dunod 2002 Algorithmes en C (en C++, en Java) par Sedgewick Dunod 2002 Suggestions en cours/TD/TDP/TDE,…