5 crédits
30.0 h + 30.0 h
Q1
Enseignants
Schaus Pierre;
Langue
d'enseignement
d'enseignement
Français
Préalables
LSINF1225 ou equivalent
Le(s) prérequis de cette Unité d’enseignement (UE) sont précisés à la fin de cette fiche, en regard des programmes/formations qui proposent cette UE.
- Maîtrîse de la programmation dans un langage orienté-objet tel que Java
- Connaissance de structures de données élémentaires (piles, files, listes, etc.)
- Notions de récursion et de complexité calculatoire.
Le(s) prérequis de cette Unité d’enseignement (UE) sont précisés à la fin de cette fiche, en regard des programmes/formations qui proposent cette UE.
Thèmes abordés
- Mesures de complexité d'un algorithme et méthodes d'analyse de complexité.
- Méthodes de conception de programmes : spécifications et conception orientée-objet.
- Structures de données de base (listes, arbres, arbres binaires de recherche) : étude de leurs propriétés abstraites, de leurs représentations concrètes, de leur application et des principaux algorithmes qui les manipulent.
- Structures de données avancées (tables de hachage, tas, arbres binaires équilibrés, représentation et manipulation de graphes, traitement de données textuelles, dictionnaires).
Acquis
d'apprentissage
d'apprentissage
A la fin de cette unité d’enseignement, l’étudiant est capable de : | |
1 | Eu égard au référentiel AA du programme « Bachelier ingénieur civil », ce cours contribue au développement, à l¿acquisition et à l¿évaluation des acquis d¿apprentissage suivants :
Eu égard au référentiel AA du programme « Bachelier en sciences informatiques », ce cours contribue au développement, à l¿acquisition et à l¿évaluation des acquis d¿apprentissage suivants :
Les étudiants ayant suivi avec fruit ce cours seront capables de
Les étudiants auront développé des compétences méthodologiques et opérationnelles. En particulier, ils auront développé leur capacité à :
|
La contribution de cette UE au développement et à la maîtrise des compétences et acquis du (des) programme(s) est accessible à la fin de cette fiche, dans la partie « Programmes/formations proposant cette unité d’enseignement (UE) ».
Contenu
- Complexité calculatoire,
- Arbres, arbres binaires de recherche,
- Arbres équilibrés,
- Dictionnaires et tables de hachage,
- Files de priorité et tas,
- Graphes
- Manipulation de données textuelles (pattern matching et de compression)
Méthodes d'enseignement
La méthode de pédagogie active suivie dans ce cours est inspirée de l'Approche Par Problèmes (APP). Cette méthode repose sur plusieurs phases de travail, certaines encadrées par des tuteurs. Outre les séances tutorées, une des composantes essentielles de cette pédagogie consiste à faire apprendre chaque étudiant par lui-même. La réussite du processus d'apprentissage présuppose donc une implication significative de chaque étudiant. Le rôle du travail en groupe est principalement de débattre des concepts étudiés et, secondairement, d'organiser le travail de chacun. L'apprentissage proprement dit reste de la responsabilité de chaque étudiant.
Le travail est organisé en missions que chaque groupe d'étudiants doit accomplir dans un délai strict (typiquement de 2 semaines par mission). Ces missions comportent des questions auxquelles il faut apporter les meilleurs réponses possibles et des problèmes de programmation, pour lesquels il faut produire des programmes Java.
Les missions ont pour but principal de créer un contexte et une motivation pour l'apprentissage de la matière et des capacités méthodologiques à développer. Arriver au bout d'une mission n'est donc pas une fin en soi. Il importe d'y être arrivé en ayant profité de l'occasion pour développer les objectifs d'apprentissage explicités dans l'énoncé de chaque mission.
Le travail est organisé en missions que chaque groupe d'étudiants doit accomplir dans un délai strict (typiquement de 2 semaines par mission). Ces missions comportent des questions auxquelles il faut apporter les meilleurs réponses possibles et des problèmes de programmation, pour lesquels il faut produire des programmes Java.
Les missions ont pour but principal de créer un contexte et une motivation pour l'apprentissage de la matière et des capacités méthodologiques à développer. Arriver au bout d'une mission n'est donc pas une fin en soi. Il importe d'y être arrivé en ayant profité de l'occasion pour développer les objectifs d'apprentissage explicités dans l'énoncé de chaque mission.
Modes d'évaluation
des acquis des étudiants
des acquis des étudiants
Une note de PARTICIPATION sur les différentes missions et problèmes de programmation (Inginious, etc) compte pour 15 % de la note finale à l'examen du mois de janvier Seul l'examen final compte à 100 % dans la note finale de seconde session (la note de participation n'intervient plus).
Autres infos
Préalables:
- maîtrîser la programmation dans un langage orienté-objet tel que Java
- connaître et utiliser correctement de structures de données élémentaires (piles, files, listes, etc.)
- avoir des notions en matière de récursion et de complexité calculatoire.
Ressources
en ligne
en ligne
https://moodleucl.uclouvain.be/course/view.php?id=7682
Bibliographie
Textbook obligatoire :
Algorithms, 4th Edition by Robert Sedgewick and Kevin Wayne, Addison-Wesley Professional.
ISBN-13: 978-0321573513
ISBN-10: 032157351X
Et plus généralement les documents (énoncés des missions, conseils pour l'examen, ...) disponibles sur : http://moodleucl.uclouvain.be/course/view.php?id=7682
Algorithms, 4th Edition by Robert Sedgewick and Kevin Wayne, Addison-Wesley Professional.
ISBN-13: 978-0321573513
ISBN-10: 032157351X
Et plus généralement les documents (énoncés des missions, conseils pour l'examen, ...) disponibles sur : http://moodleucl.uclouvain.be/course/view.php?id=7682
Faculté ou entité
en charge
en charge
INFO
Programmes / formations proposant cette unité d'enseignement (UE)
Intitulé du programme
Sigle
Crédits
Prérequis
Acquis
d'apprentissage
d'apprentissage
Master [120] : ingénieur civil en mathématiques appliquées
Bachelier en sciences mathématiques
Master [120] en science des données, orientation statistique
Mineure d'accès en statistique et science des données
Mineure en sciences de l'ingénieur : informatique
Approfondissement en statistique et science des données