ECTS
4,5 crédits
Composante
Systèmes Industriels et techniques de Communication
Volume horaire
30h
Période de l'année
Enseignement troisième semestre
Description
Définition d'algorithme
Algorithmes de tris :
- Tri par sélection
- Tri par insertion
- Tri rapide
Complexité d'un algorithme :
- Notation Big O
- Classe P, EXP, NP
Structures de données :
- Structures linéaires (tableaux, piles, files)
- Structures non-linéaires (arbres, graphes)
Algorithmes de la théorie des graphes :
- Résistance d’un réseau aux pannes
- Recherche de plus court chemin (Dijkstra, Floyd-Warshall)
Objectifs
Ce cours a pour objectif de fournir les bases fondamentales de l’algorithmique, en introduisant les notions essentielles telles que les algorithmes de tri, la complexité et les structures de données classiques.
Il vise également à initier les étudiants aux principaux algorithmes sur les graphes et à l’analyse de leur efficacité, afin de comprendre et résoudre des problèmes informatiques structurés.
À l’issue de ce programme, les étudiants sauront concevoir et analyser des algorithmes, en évaluer la complexité et comparer leurs performances. Ils maîtriseront les principales structures de données et seront capables de les utiliser pour résoudre des problèmes, notamment en théorie des graphes (robustesse des réseaux, plus courts chemins).
Évaluation
Évaluation au cours du semestre et évaluation finale en fin de semestre : 50% Contrôle Continu (évaluations en cours de semestre, dont au maximum 25% TP ou travaux de groupe et au minimum 75% d'évaluations individuelles) et 50% Évaluation de fin de semestre (épreuve écrite 1h30).
L’utilisation de tout dispositif électronique non autorisé par l’enseignant lors des évaluations est strictement interdite. Le recours à l'intelligence artificielle ou à internet sans qu'il ait été explicitement autorisé par l'enseignant sera considéré comme une fraude.
Heures d'enseignement
- CMCM6h
- TDTD8h
- TPTP16h
Pré-requis obligatoires
Savoir écrire et comprendre des programmes en langage Python.
