Section outline
-
À l’issue de l’unité d’enseignement CSC 301 – Structures de Données avec Java II, l’étudiant devra démontrer qu’il a atteint les résultats d’apprentissage suivants :
Résultat d’apprentissage 1 : Compréhension des structures de données avancées
À la fin du cours, l’étudiant sera capable d’expliquer le fonctionnement et les usages des structures de données avancées.
Il devra être capable de :
- Définir les arbres, graphes, tables de hachage et tas.
- Expliquer leurs domaines d’application.
- Comparer leurs caractéristiques fondamentales.
- Justifier leur utilisation selon un contexte donné.
Résultat d’apprentissage 2 : Implémentation des structures de données en Java
À l’issue du cours, l’étudiant sera capable d’implémenter efficacement des structures de données avancées en Java.
Il devra être capable de :
- Écrire des implémentations correctes et optimisées.
- Utiliser les classes, interfaces et collections Java.
- Structurer le code de manière claire et modulaire.
- Documenter et tester ses implémentations.
Résultat d’apprentissage 3 : Analyse de la complexité algorithmique
À la fin du cours, l’étudiant devra démontrer sa capacité à analyser les performances des structures de données.
Il devra être capable de :
- Utiliser la notation Big-O.
- Évaluer les coûts temporels et spatiaux.
- Comparer plusieurs solutions algorithmiques.
- Justifier le choix d’une structure par l’analyse.
Résultat d’apprentissage 4 : Application à des problèmes réels
À l’issue du cours, l’étudiant sera capable d’utiliser les structures de données pour résoudre des problèmes concrets.
Il devra être capable de :
- Identifier la structure la plus adaptée à un problème.
- Implémenter une solution complète.
- Tester et valider les résultats.
- Évaluer l’efficacité de la solution proposée.
Résultat d’apprentissage 5 : Travail collaboratif et projet algorithmique
À la fin du cours, l’étudiant sera capable de travailler en équipe sur un projet utilisant des structures de données.
Il devra être capable de :
- Collaborer efficacement en groupe.
- Gérer le code source et la documentation.
- Contribuer à la résolution collective des problèmes.
- Respecter les délais et les objectifs du projet.