Algorithmique II

Quadrimestre 2 -

24 heures

Coordinateur : CLR

Enseignants : CLR, NRI, CUV, SDR, MCD, APA, NPX

Description générale du cours

Techniques de programmation et de conception d'algorithmes. Approche théorique + exercices pratiques.

Objectifs

  • Apprentissage de la construction d'algorithmes cohérents (structures logiques des programmes).
  • Etude de plusieurs méthodes de représentation des algorithmes.
  • Approche des paradigmes de la programmation.
  • Etude de la manipulation de certaines structures de données.

Acquis d'apprentissage

  • Rédiger la résolution d'un problème donné en étapes élémentaires et séquentielles, exprimées dans un pseudo-code dont la syntaxe sera scrupuleusement respectée.
  • Maitriser les structures alternatives et itératives contrôlant le déroulement d'un algorithme.
  • Gérer le découpage modulaire, c'est-à-dire la division d'un problème important en une combinaison de sous-problèmes plus élémentaires.
  • Savoir reproduire et adapter les modèles algorithmiques classiques présentés aux cours (par ex. algorithmes de tri, traitements de rupture, etc.) à des problèmes similaires.
  • Identifier les données et les résultats attendus d'un problème donné, et représenter et mettre en pratique les structures de données adéquates à utiliser pour sa résolution.
  • Connaitre les principes de base de la programmation orientée objet (par ex. encapsulation, classes, méthodes, etc.)

Plan du cours

Chapitre 1 : Les tableaux à deux dimensions

Chapitre 2 : L'orienté objet

Chapitre 3 : La liste

Chapitre 4 : Le fichier séquentiel

  • Algorithmes de base : parcours, recherche, sélection, éclatement
  • Cas des fichiers ordonnés

Chapitre 5 : Les traitements de ruptures

Chapitre 6 : Représentation des données

Bibliographie

  • Syllabus (ESI)