LI 012 : Algorithmes et Structures de données


La conception de programmes informatiques de qualité nécessite aussi bien un travail sur l'organisation des actions, leur contrôle (algorithmique) qu'un travail sur les données : leur mode de codage, de stockage, etc. (structures de données).

L'objectif du cours est d'aborder ces deux aspects de la conception, en étudiant les grandes classes de problèmes identifiés et leurs solutions.


Emploi du temps

Horaires : Mardi, de 14:00 à 16:00
Salle : 4, bât A
Rythme : Semestriel (S2)
Premier cours Mardi 8 Février

Plan (sommaire et indicatif) du cours

  • Les mots : quelques notions de théorie des langages formels, et les algorithmes de recherche de facteurs.
  • Les tris : algorithmes standards, en nlogn, récursifs.
  • La récursivité : principes et mise en oeuvre en Pascal.
  • Structures linéaires (1) : notion de type abstrait de données, définition du TDA ``listes''.
  • Structures linéaires (2) : piles, files, etc.
  • Structures non linéaires (1) : les arbres.

Contrôles

  • Devoir non surveillé n° 1 : distribué le 07 Mars, pour le 18 avril.
  • Devoir sur table n° 1 : mardi 28 mars, 14:00 à 16:00, salle 4. Aucun document autorisé.
  • Devoir non surveillé n° 2 : distribué le 25 avril, pour le 23 mai
  • Examen final (pour tous les étudiants) : Jeudi 08 Juin, de 14:00 à 17:00, salle Fourier. Aucun document autorisé.

Modalités de contrôle

  • Contrôle continu
    Un DST (30%), deux DNS (20%, on compte seulement la meilleure note) et un partiel en fin de semestre (50%)
  • Contrôle terminal
    Un examen en fin de semestre (100%)

Bibliographie


  Wed Jun 07, 2000 Ma maison-page