Enseignants
Langue
d'enseignement
d'enseignement
Français
Préalables
Ce cours suppose acquises les notions de base de la programmation visées par le cours LINFO1101
Thèmes abordés
- Conception et mise en oeuvre d'algorithmes itératifs ou récursifs : parcours, comptage, tri, recherche dans des collection
- Complexité calculatoire
- Structures de données élémentaires : tableaux, piles, files, listes chaînées
- Structures de données récursives : structures arborescentes, arbres binaires de recherche
- Invariants
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 en sciences informatiques », ce cours contribue au développement, à l'acquisition et à l'évaluation des acquis d'apprentissage suivants :
|
Contenu
L'algorithmique concerne la résolution de problèmes par la mise en oeuvre de suites d'opérations élémentaires selon un processus défini aboutissant à une solution.
Cette discipline est à la fois abstraite et mise en pratique par le biais de programmes, typiquement en Python, exécutés sur un ordinateur.
Cette discipline est à la fois abstraite et mise en pratique par le biais de programmes, typiquement en Python, exécutés sur un ordinateur.
- Complexité temporelle et spatiale
- Algorithmes de recherche dans les tableaux
- Types abstraits et structures de données : piles, files, tableaux dynamiques, liste chaînes
- Algorithmes de tri
- Récursion
- Types abstraits récursifs
- Complexité calculatoire des algorithmes récursifs, équations de récurrence
- Arbres binaires et dictionnaires
- Invariants
Méthodes d'enseignement
- Cours magistraux
- Travaux pratiques sur le serveur Inginious
- Un projet en fin de quadrimestre
Modes d'évaluation
des acquis des étudiants
des acquis des étudiants
Calcul de la note globale pour le cours
Une note de PARTICIPATION reflète l'implication de l'étudiant lors de ses travaux sur Inginious et le projet en fin de quadrimestre.
Elle est établie en fin de quadrimestre (semaine 13) sur l'ensemble de ces activités.
En première session, la note de participation vaut pour 20 % de la note globale + 80 % pour l'examen final.
La note de participation ne peut pas être réévaluée.
En seconde session, la note de participation compte pour 10 % et l'examen final pour 90 % de la note globale.
L'examen final est un écrit à livre fermé sur ordinateur ou, le cas échéant, sur papier.
Règles concernant les collaborations entre étudiants et l'usage de ressources externes
Une collaboration active entre les étudiant.e.s est encouragée lors des séances de travaux pratiques et via un forum d'échanges sur Moodle.Chaque étudiant.e doit soumettre une solution personnelle au projet final. Le recours à des ressources publiques (p.ex. stackoverflow.com), ce-inclus des IA génératives (p.ex. chatGPT) est autorisé pour autant que chaque (fragment de) code mentionne toutes les ressources utilisées.
La diffusion ou l'échange entre étudiants de (fragments de) code ne sont pas autorisés par quelque moyen que ce soit (GitHub, Facebook, Discord, ...) et ce même après la date limite de remise du projet.
Le non-respect de ces règles pour le projet entraînera une note globale de 0 pour la participation au cours.
L'examen final sur ordinateur doit se faire sans accès à aucune ressource externe.
Ces règles sont exposées et détaillées lors du premier cours (voir site Moodle du cours).
Ressources
en ligne
en ligne
Bibliographie
Il n'y a pas d'ouvrage de référence obligatoire mais, à titre complémentaire, des ouvrages sont recommandés sur le site Moodle.
Support de cours
- Les supports obligatoires sont constitués de l'ensemble des documents (transparents des cours magistraux, énoncés des travaux pratiques, compléments, ...) disponibles depuis le site Moodle du cours.
- Required teaching material include all documents (lecture slides, project assignments, complements, ...) available from the Moodle website for this course.
Faculté ou entité
en charge
en charge