Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
Algorithmes & Structures de Données
Highest Rated
Rating: 4.3 out of 5(28 ratings)
238 students

Algorithmes & Structures de Données

Maitrîsez les Fondamentaux des Algorithmes Classiques et des Structures de Données avec Java
Last updated 11/2024
French
French [Auto],

What you'll learn

  • Se préparer à des entretiens de programmation
  • Analyser et évaluer la complexité en temps des algorithmes
  • Améliorer vos compétences en matière de résolution de problèmes
  • Comprendre la structure des arbres binaires et les algorithmes de parcours d'arbre
  • Algorithmes de recherche : recherche séquentielle, recherche dichotomique, recherche exponentielle
  • Algorithmes de tri : tri à bulles, tri par sélection, tri par insertion, tri par fusion, tri rapide, etc
  • Maîtriser les structures de données essentielles telles que les tableaux, les listes chaînées, les piles, les files et les tables de hachage

Course content

11 sections78 lectures5h 46m total length
  • Introduction1:41

Requirements

  • Bases de la programmation informatique
  • Fondamentaux de Java
  • Bases de la programmation orientée objet

Description

Ce cours sur les "Algorithmes et Structures de Données" est conçu pour vous fournir une compréhension approfondie des concepts essentiels nécessaires pour devenir un développeur logiciel compétent.

Voici ce que vous pouvez attendre de ce programme détaillé :


  1. Introduction à la Complexité Algorithmique :


    • Notation Big O : Vous apprendrez à analyser et à comparer l'efficacité des algorithmes en termes de temps. La notation Big O est un outil fondamental qui vous aidera à évaluer comment un algorithme se comporte lorsque la taille de l'entrée augmente. Nous commencerons par des exemples simples pour comprendre comment la complexité est déterminée et nous progresserons vers des analyses plus complexes.


  2. Structures de Données Linéaires :


    • Tableaux : Nous explorerons les tableaux statiques et dynamiques, en discutant de leurs avantages et inconvénients, et nous verrons comment les manipuler.

    • Listes Chaînées : Vous apprendrez à implémenter des listes chaînées simples, en comprenant quand et pourquoi les utiliser par rapport aux tableaux.

    • Piles (Stacks) : Nous couvrirons les concepts de LIFO (Last In, First Out), les opérations de base et les utilisations typiques des piles.

    • Files (Queues) : En comprenant le modèle FIFO (First In, First Out), vous verrez comment les files sont utilisées dans différentes applications.

    • Tables de Hachage : Vous découvrirez comment les tables de hachage permettent un accès rapide aux données et comment elles sont mises en œuvre, ainsi que les concepts de collision et de résolution de collisions.


  3. Structures de Données Arborescentes :


    • Arbres Binaires : Introduction aux arbres binaires, explorant leur structure et leurs propriétés. Vous apprendrez les opérations de base telles que l'insertion, la suppression et la recherche.


  4. Algorithmes de Tri et de Recherche :


    • Algorithmes de Tri : Vous étudierez plusieurs algorithmes de tri, comme le tri par insertion, le tri par sélection, le tri à bulles, le tri rapide (quicksort) et le tri fusion (mergesort). Nous discuterons de leurs complexités et de leurs performances respectives.

    • Algorithmes de Recherche : Vous apprendrez des méthodes de recherche classiques telles que la recherche linéaire, la recherche binaire et leurs applications dans les structures de données appropriées.


Tout au long du cours, nous utiliserons Java comme langage de programmation principal. Chaque concept théorique sera illustré par des exemples de code clairs et précis. Vous aurez également des exercices pratiques pour renforcer votre compréhension et appliquer les concepts appris.

Si vous n'avez pas encore les bases nécessaires pour ce cours, pas de souci ! Je vous recommande de consulter mon autre cours intitulé "Programmation Orientée Objet en Java", disponible sur Udemy. Ce cours vous préparera de manière adéquate en vous fournissant les fondements essentiels de la programmation en Java, nécessaires pour bien suivre ce cours.


Who this course is for:

  • Toute personne souhaitant devenir un meilleur développeur
  • Toute personne se préparant à un entretien d'embauche dans le domaine du codage
  • Les étudiants en informatique dont les professeurs n'ont pas réussi à expliquer les sujets
  • Développeurs autodidactes qui n'ont pas obtenu de diplôme en informatique