The objectives of Data Structures and Algorithms module can be summarized in these points as follow:
- Manipulate hash tables and know the different operations that can be manipulated on this type of data and more precisely demonstrate several approaches: linear and quadratic probing, double hashing, and separate chaining to resolve the collision problem while using OOP and more particularly the use of JAVA language.
- Covering the simplest popular tree structure: binary trees in the general case and binary search trees more specifically, know the different operations that can be manipulated on these types of data and more precisely know the different paths to follow to visit the nodes of a binary tree in using different recursive methods and demonstrating insertion, deletion, and search, min and maxf. And finally, implementing binary search trees in Java.
- Study balanced trees (AVL) and know the different types of rotation to apply during additions or insertions so that the AVL tree can preserve its type. Implement AVLs in Java.
- Explaining red-black trees, one of the most efficient balanced trees. Then demonstrates the rotations and color switches necessary to balance the tree
- Explore the notion of graphs, some concepts, types of graphs, how to represent graphs, implement graphs, calculation of the shortest path (disjkistra algorithm)
This module is aimed at master 1 students specializing in web and artificial intelligence
Ce
Cours est une unité d'enseignement transversale destiné aux étudiants
inscrits en Master Recherche afin de les initier aux différentes notions
liées à la recherche scientifique dans le but de réaliser et rédiger
un travail de qualité tout en respectant les codes de déontologie.
Le public cible :
Les étudiants en 1ière année Master en Informatique Option Génie Logiciel
- This course is about distributed systems distribués, which are built on computer networks (e.g., the Internet); and which allow many types of applications to run in a smooth, transparent, open and scalable way (e.g., Web, Email, distributed DBs, Audi-Video streaming, Internet of Things, High performance computing, Peer to peer networks, etc).
- The distributed systems course is required during Semester 2 of the Master in Software Engineering, a specialty in the Informatics.
- The goal of this course is to explain how distributed systems work and what is their role in the modern Internet and in IoT and cloud based applications.
Les activités de vérification et de tests couvrent entre 35 et 55 % du coût de production de logiciel et cela sans tenir compte du coût de maintenance et d'évolution. Ce module a pour objectif de former les étudiants à ce problème et de leur présenter les techniques de détection des erreurs, de prévention et de correction des défauts. Lors de ce module, les étudiants acquerront des connaissances approfondies des méthodes de test pouvant être intégrées tout au long du cycle de vie du logiciel.