Options d’inscription
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