Puisque le traitement de l'information est la seule tâche réalisée par un ordinateur, l'organisation et la manipulation de cette dernière reste au centre de tous développement informatique. Ce cours traitera d'une façon systématique cet aspect critique et essentiel de l'ingénierie des systèmes informationnels. Objectifs spécifiques
Les structures de données et leurs algorithmes sont couverts dans le cours selon ces quatre objectifs pédagogiques : - analyse de complexité - définition, caractérisation et représentation - stratégies de réalisation, implémentation et déverminage - utilisation concrète via le développement d'applications pertinentes et stimulantes - identification des meilleurs structures de données et algorithmes considérant les compromis optimaux
39 heures de cours magistral (enseignement théorique)
36 heures de laboratoire (projet de session)
3 heures de travail personnel (en moyenne) par semaine
À chaque semaine, trois heures de cours magistraux et trois heures de laboratoire sont données. Les cours présentent les divers concepts théoriques alors que les laboratoires donnent la chance aux étudiants et étudiantes d’approfondir leurs connaissances en solutionnant des problèmes concrets. Les différents laboratoires abordent, par le biais de projets stimulants, les principaux sujets du cours tout en amenant l’étudiant ou l'étudiante à parfaire ses compétences globales en informatique.
Ne s'applique pas.
Déroulement des laboratoires
Notes : - Tous les laboratoires doivent être réalisé en équipe d'au moins 2 étudiants ou étudiantes. - UML est utilisé dans les échanges enseignant(e)s-étudiant(e)s et étudiant(e)s-étudiant(e)s. - Les travaux doivent être réalisé en langage C++. - La blibliothèque Qt est utilisée. - Les développements sont réalisés avec Visual Studio sous Windows.
Outils utilisés
- Ordinateur personnel - UML - Langage C++ et Qt - Visual Studio
Quiz 1 Quiz 2 Quiz 3 Quiz 4
20.0% 20.0% 20.0%
Notes : Une moyenne de 50% est exigée pour l'examen final et pour les travaux individuels afin de réussir le cours (double seuil).
Afin de faire valider une absence à une évaluation en vue d’obtenir un examen de compensation, l’étudiante ou l’étudiant doit utiliser le formulaire prévu à cet effet dans son portail MonÉTS pour un examen final qui se déroule durant la période des examens finaux ou pour tout autre élément d’évaluation surveillé de 15% et plus durant la session. Si l’absence concerne un élément d’évaluation de moins de 15% durant la session, l’étudiant ou l’étudiante doit soumettre une demande par écrit à son enseignante ou enseignant.
Toute demande de validation d’absence doit se faire dans les cinq (5) jours ouvrables suivant la tenue de l’évaluation, sauf dans les cas d’une absence pour participation à une activité prévue aux règlements des études où la demande doit être soumise dans les cinq (5) jours ouvrables avant le jour de départ de l’ÉTS pour se rendre à l’activité.
Toute absence non justifiée par un motif majeur (voir articles 7.2.6.1 du RÉPC et 6.5.2 du RÉCS) entraînera l’attribution de la note zéro (0).
Aucune
- Cormen, T. H., Introduction to Algorithms (third edition, 2009) (fourth edition, 2022) - Drozdek, A., Data Structures and Algorithms in C++ (2012) - Goodrich, M. T., Tamassia, R., Mount, D. M., Data Structures and Algorithms in C++ (2011)
https://ena.etsmtl.ca/