Le sujet sera disponible le 15 décembre à 10h15. Il y aura sans doute à exécuter des algorithmes vus en cours. Il y aura ensuite sans doute des problèmes sur : - des structures de données vu en cours, ou non vus. - à concevoir des algorithmes (diviser pour régner, glouton, programmation dynamique, flots, réduction, etc.) - à justifier des complexités - à démontrer des corrections d'algorithmes non vus en cours ou que vous aurez vous-même conçus Nous aimons les choses simples et bien présentées. Un algorithme de haut-niveau mais où les structures sont assez détaillées pour en analyser la complexité suffit la plupart du temps. Ne me rendez pas de programmes écrits en C++ par exemple. Généralement, nous préférons nettement l'élégance à une solution incompréhensible qui fait gagner 3ms. Les détails d'implémentation sont souvent non pertinents mais pas toujours... Les démonstrations doivent être claires et bien rédigées. Mais nous n'aimons pas les choses simplettes. Un algorithme naïf en temps triplement exponentiel est à bannir si une solution élégante existe. Ne vous inquiètez pas, travaillez, apprenez et bon courage.