Ce cours s'adresse aux étudiants de deuxième année ingénieur en informatique. Il est destiné à leur donner les bases nécessaires pour comprendre la notion de complexité algorithmique, une matière centrale et fondamentale dans votre cursus d'ingénieur en informatique. L'algorithmique, en tant que discipline est l'art de concevoir des algorithmes, c'est-à-dire des suites d'instructions bien définies permettant de résoudre un problème ou d'accomplir une tâche donnée. Elle est à la base de nombreuses applications informatiques que nous utilisons au quotidien. De la recherche d'itinéraires optimisés sur une carte à la recommandation de produits en ligne, en passant par le tri de nos e-mails, les algorithmes sont omniprésents et jouent un rôle majeur dans la performance et l'efficacité des logiciels que nous utilisons. L'un des aspects cruciaux que nous aborderons dans ce cours est la notion de complexité algorithmique. La complexité d'un algorithme mesure sa performance en termes de ressources qu'il consomme, telles que le temps d'exécution et l'espace mémoire. Comprendre et analyser la complexité algorithmique est indispensable pour évaluer la qualité d'un algorithme et sa capacité à traiter efficacement des données de plus en plus volumineuses. Nous étudierons donc les différentes méthodes d'analyse de complexité, les notations utilisées, et comment évaluer la pertinence d'un algorithme en fonction des contraintes spécifiques de chaque situation.

Ce cours est destiné aux étudiants de 2 -ème année ingénieur en informatique pour familiarise l'étudiant de ce domaine aux notions et outils de probabilités et statistique tels que les variables, couples et vecteurs aléatoires, modes de convergence et l'introduction de l'inférence statistique et test d'hypothèses, pour qu' il puisse modéliser des phénomènes dans déférents domaines tels que; le codage de l'information, traitement de signale, transformation des données.......... 

     

Ce module vise à fournir aux étudiants une compréhension approfondie des concepts fondamentaux des fichiers et de leur organisation, ainsi que des méthodes d'allocation et d'indexation des fichiers. Il aborde également l'importance des bases de données dans le domaine de l'informatique.

A l’issue de ce cours l’étudiant doit être capable de concevoir calculateur élémentaire soit:

1.Connaître le rôle de chaque composant dans le chemin de données d’un calculateur.
2.Maîtriser le cheminement de l’information dans les circuits de base et connaitre le fonctionnement de l’unité de contrôle (séquenceurs).
3.Comprendre les mécanismes de base permettant à un calculateurs de communiquer (entrées/sorties et système d’interruption)

Ce cours complète le cours d'Algèbre II et vise le même objectif global. C'est un cours d'algèbre linéaire qui aide les ingénieurs à résoudre des problèmes sur leur cheminement académique. Après avoir introduit les espaces vectoriels et les applications linéaires en algèbre II, le calcul matriciel, la résolution des systèmes linéaires, le calcul des déterminants et la réduction des endomorphismes sont suivis après le calcul spectral en dimension finie. Les formes quadratiques et les espaces préhilbertiens réels et complexes sont également abordés.