Algorithmique, Programmation et Structure de Données (LIFAPSD)


Présentation

Prérequis

  • Savoir écrire un algorithme simple en langage algorithmique
    • manipuler des variables de type booléen, entier, réel, caractère
    • manipuler des tableaux et chaînes de caractères
    • connaître les structures de contrôle (tests, boucles, ...)
    • savoir découper un programme en fonctions et procédures
    • connaître les modes de passage des paramètres
    • être familier avec l’organisation de la mémoire
  • Savoir implémenter tout ça en langage C/C++

Contenu de l'UE

  • Manipulation des principales structures de données utilisées en informatique
    • types primitifs: entier, réels, caractères, booléens, pointeurs
    • types agrégés: tableaux et structures
    • gestion des entrées-sorties: standard et fichier
    • structures dynamiques: tableau, liste chainée, pile, file, arbre, fichier
  • Les classes et objets
    • membre, spécificateur d’accès, surcharge d’opérateur
    • type de données abstrait et programmation modulaire
  • Algorithmique
    • algorithmes de tri (sélection, insertion, fusion)
    • introduction à la notion de complexité algorithmique

MCC

La note finale LIFAPSD est calculée comme suit, où CC1TD-CC2TD-CC3TD sont les trois contrôles continus de TD, CC1TP-CC2TP-CC3TP sont les trois contrôles continus de TP, TPNOTE est le TP noté:

LIFAPSD = (10 * CC1TD + 10 * CC2TD + 10 * CC3TD + 15 * CC1TP + 15 * CC2TP + 15 * CC3TP + 25 * TPNOTE) / 100

Les modalités de contrôle des connaissances pour les UE de licence sont disponibles sur le site de l'Université. Notez les points spécifiques importants suivants.
  • Une épreuve de seconde chance sera proposée à tous les étudiants en fin de semestre
  • En cas d'aucune absence aux contrôles continus, la note de seconde chance remplacera la plus mauvaise note des contrôles continus (CC TD, CC TP, TP noté), uniquement si elle est meilleure
  • En cas d'absences (justifiées ou injustifiées) aux contrôles, la note de seconde chance remplacera les absences aux contrôles (avec les coefficients des contrôles concernés)
  • Si le cumul des coefficients des absences aux contrôles dépasse strictement 40% de la note d'UE, la note de seconde chance ne sera pas utilisée et l’étudiant sera DEF à l’UE (et donc à l’année)
  • Il n’y a pas de session 2 (ni en janvier ni en juin)

Groupes et emplois du temps

Automne 2025 :

Groupe

Créneau TD

Encadrant TD

Salle TD

Créneau TP

Encadrant TP

Salle TP

Lien EDT

A1

lundi 8h00 – 9h30

Vincent Nivoliers

Omega 01

lundi 9h45 – 13h00

Vincent Nivoliers

Ariane 16

EDT A1

A2

Ariane 15

EDT A2

B1

lundi 8h00 – 9h30

Erwan Guillou

Thémis 68

lundi 9h45 – 13h00

Erwan Guillou

Ariane 14

EDT B1

B2

Etienne Parent

Ariane 13

EDT B2

C1

lundi 8h00 – 9h30

Etienne Geantet

Thémis 63

lundi 9h45 – 13h00

Etienne Geantet

Ariane 12

EDT C1

C2

Thomas Stavis

Ariane 11

EDT C2

D1

lundi 8h00 – 9h30

Samir Aknine

Thémis 53

lundi 9h45 – 13h00

Guillaume Damiand

Ariane 06

EDT D1

D2

Valentin Cuzin-Rambaud

Ariane 05

EDT D2

E1

lundi 9h45 – 11h15

Nicolas Pronost

Thémis 55

mardi 15h45 - 19h

Nicolas Pronost

Ariane 15

EDT E1

E2

Ariane 21

EDT E2

F1

lundi 9h45 – 11h15

Samir Aknine

Thémis 54

mardi 15h45 - 19h

Elise Jeanneau

Ariane 11

EDT F1

F2

Gabriel Meynet

Ariane 12

EDT F2

G1

lundi 9h45 – 11h15

Florence Zara

Grignard L

mardi 15h45 - 19h

Florence Zara

Ariane 05

EDT G1

G2

Louis Bagot

Ariane 04

EDT G2

H1

lundi 9h45 – 11h15

Nicolas Louvet

Grignard K

mardi 15h45 - 19h

Nicolas Louvet

Ariane 03

EDT H1

H2

Maher Mallem

Ariane 14

EDT H2


Emploi du temps LIFAPSD tous les groupes

Ressources

Transparents de CM

CM1 - Introduction et rappels transparents CM1
CM2 - Allocation dynamique de mémoire transparents CM2
CM3 - Classes et objets (1/2) transparents CM3
CM4 - Classes et objets (2/2) transparents CM4
CM5 - Fichier, tri et complexité (1/2) transparents CM5
CM6 - Fichier, tri et complexité (2/2) transparents CM6
CM7 - TDA et programmation séparée transparents CM7
CM8 - Tableau Dynamique transparents CM8
CM9 - Liste transparents CM9
CM10 - Pile et file transparents CM10
CM11 - Arbre (1/2) transparents CM11
CM12 - Arbre (2/2) transparents CM12
CM12 (bonus) - Résumé sur les TDA transparents CM12 bonus

Exercices de TD

Polycopié entier des énoncés de TD et TP.

TD1 - Vie et mort des variables en mémoire (1/2) énoncé corrigé
TD2 - Vie et mort des variables en mémoire (2/2) énoncé corrigé
TD3 - Classe et objet (1/2) énoncé
TD4 - Classe et objet (2/2) énoncé
TD5 - Algorithme, invariant de boucle et complexité (1/2) énoncé
TD6 - Algorithme, invariant de boucle et complexité (2/2) énoncé
TD7 - Tri fusion (1/2) énoncé
TD8 - Tri fusion (2/2) énoncé
TD9 - Tableau dynamique énoncé
TD10 - Liste chaînée énoncé
TD11 - Pile et file énoncé
TD12 - Arbre binaire énoncé

Exercices de TP

Polycopié entier des énoncés de TD et TP

TP1 - De LIFAPI à LIFAPSD énoncé
TP2 - Vie et mort des variables en mémoire énoncé
TP3 - Classe et objet énoncé
TP4 - Fichier et complexité expérimentale énoncé random.txt, reverse.txt, sorted.txt
TP5 - Tableau dynamique énoncé ElementTD.h, ElementTD.cpp, TableauDynamique.h
TP6 - Liste doublement chaînée énoncé ElementL.h, ElementL.cpp, Liste.h
TP7 - Pile et file énoncé ElementL.h, ElementL.cpp, ElementTD.h, ElementTD.cpp, File.h, Pile.h
TP8 - Arbre binaire de recherche énoncé ElementA.h, ElementA.cpp, Arbre.h

Annexes


Annales d'examens et corrigés

  • Pas d'annale spécifique pour l'épreuve de seconde chance (nouvelle en 2025-2026), mais sera similaire à l'ECA des années passées :
  • ECA automne 2024-2025 : énoncé et corrigé
  • ECA automne 2023-2024 : énoncé et corrigé
  • ECA automne 2022-2023 : énoncé et corrigé

Littérature

Il existe des tonnes de ressources sur Internet et dans les librairies pour apprendre l'algorithmique et la programmation C++. Voici quelques livres disponibles à la BU de science, ainsi que quelques liens utiles.