diff --git a/src/data-structures/hash-table/README.fr-FR.md b/src/data-structures/hash-table/README.fr-FR.md new file mode 100644 index 00000000..f32d8e56 --- /dev/null +++ b/src/data-structures/hash-table/README.fr-FR.md @@ -0,0 +1,29 @@ +# Table de hachage + +En informatique, une **table de hachage** (carte de +hachage) est une structure de données qui implémente +un type de données abstrait *tableau nassociatif*, +une structure qui permet de *mapper des clés sur des +valeurs*. Une table de hachage utilise une *fonction +de hachage* pour calculer un index dans un tableau +d'alvéoles (en anglais, buckets ou slots), à partir +duquel la valeur souhaitée peut être trouvée. + +Idéalement, la fonction de hachage affectera chaque clé +à une alvéole unique, mais la plupart des tables de +hachage conçues emploient une fonction de hachage +imparfaite, ce qui peut provoquer des collisions de +hachage où la fonction de hachage génère le même index +pour plusieurs clés. De telles collisions doivent être +accommodées d'une manière ou d'une autre. + +![Hash Table](https://upload.wikimedia.org/wikipedia/commons/7/7d/Hash_table_3_1_1_0_1_0_0_SP.svg) + +Collision de hachage résolue par chaînage séparé. + +![Hash Collision](https://upload.wikimedia.org/wikipedia/commons/d/d0/Hash_table_5_0_1_1_1_1_1_LL.svg) + +## Références + +- [Wikipedia](https://fr.wikipedia.org/wiki/Table_de_hachage) +- [YouTube](https://www.youtube.com/watch?v=shs0KM3wKv8&index=4&list=PLLXdhg_r2hKA7DPDsunoDZ-Z769jWn4R8) diff --git a/src/data-structures/hash-table/README.md b/src/data-structures/hash-table/README.md index d5258fea..37d20a61 100644 --- a/src/data-structures/hash-table/README.md +++ b/src/data-structures/hash-table/README.md @@ -4,6 +4,7 @@ _Read this in other languages:_ [_简体中文_](README.zh-CN.md), [_Русский_](README.ru-RU.md), [_日本語_](README.ja-JP.md), +[_Français_](README.fr-FR.md), [_Português_](README.pt-BR.md) In computing, a **hash table** (hash map) is a data diff --git a/src/data-structures/heap/README.fr-FR.md b/src/data-structures/heap/README.fr-FR.md new file mode 100644 index 00000000..488539e5 --- /dev/null +++ b/src/data-structures/heap/README.fr-FR.md @@ -0,0 +1,23 @@ +# Tas (structure de données) + +En informatique, un **tas** est une structure de données +arborescente spécialisée qui satisfait la propriété de tas +décrite ci-dessous. + +Dans un *tas minimal* (en anglais *min heap*), si `P` est +un nœud parent de `C`, alors la clé (la valeur) de `P` est +inférieure ou égale à la clé de `C`. + +![MinHeap](https://upload.wikimedia.org/wikipedia/commons/6/69/Min-heap.png) + +Dans un *tas maximal* (en anglais *max heap*), la clé de `P` +est supérieure ou égale à la clé de `C`. + +![Heap](https://upload.wikimedia.org/wikipedia/commons/3/38/Max-Heap.svg) + +Le nœud au «sommet» du tas sans parents est appelé le nœud racine. + +## Références + +- [Wikipedia](https://fr.wikipedia.org/wiki/Tas_(informatique)) +- [YouTube](https://www.youtube.com/watch?v=t0Cq6tVNRBA&index=5&t=0s&list=PLLXdhg_r2hKA7DPDsunoDZ-Z769jWn4R8) diff --git a/src/data-structures/heap/README.md b/src/data-structures/heap/README.md index f0334f26..b125fad7 100644 --- a/src/data-structures/heap/README.md +++ b/src/data-structures/heap/README.md @@ -4,6 +4,7 @@ _Read this in other languages:_ [_简体中文_](README.zh-CN.md), [_Русский_](README.ru-RU.md), [_日本語_](README.ja-JP.md), +[_Français_](README.fr-FR.md), [_Português_](README.pt-BR.md) In computer science, a **heap** is a specialized tree-based diff --git a/src/data-structures/priority-queue/README.fr-FR.md b/src/data-structures/priority-queue/README.fr-FR.md new file mode 100644 index 00000000..76a5f895 --- /dev/null +++ b/src/data-structures/priority-queue/README.fr-FR.md @@ -0,0 +1,22 @@ +# File de priorité + +En informatique, une **file de priorité** est un type +de données abstrait qui s'apparente à une file d'attente normale +ou une structure de données empilées, mais où chaque élément est +en plus associé à une "priorité". +Dans une file de priorité, un élément avec une priorité élevée +est servi avant un élément à faible priorité. Si deux éléments ont +la même priorité, ils sont servis selon leur ordre dans la file +d'attente. + +Alors que les files de priorité sont souvent implémentées avec des tas, +elles sont conceptuellement distinctes des tas. Une file de priorité +est un concept abstrait comme "une liste" ou "une carte"; tout comme +une liste peut être implémentée avec une liste chaînée ou un tableau, +une file de priorité peut être implémentée avec un tas ou une variété +d'autres méthodes telles qu'un tableau non ordonné. + +## Références + +- [Wikipedia](https://fr.wikipedia.org/wiki/File_de_priorit%C3%A9) +- [YouTube](https://www.youtube.com/watch?v=wptevk0bshY&list=PLLXdhg_r2hKA7DPDsunoDZ-Z769jWn4R8&index=6) diff --git a/src/data-structures/priority-queue/README.md b/src/data-structures/priority-queue/README.md index b08e884f..a487678a 100644 --- a/src/data-structures/priority-queue/README.md +++ b/src/data-structures/priority-queue/README.md @@ -4,6 +4,7 @@ _Read this in other languages:_ [_简体中文_](README.zh-CN.md), [_Русский_](README.ru-RU.md), [_日本語_](README.ja-JP.md), +[_Français_](README.fr-FR.md), [_Português_](README.pt-BR.md) In computer science, a **priority queue** is an abstract data type diff --git a/src/data-structures/queue/README.fr-FR.md b/src/data-structures/queue/README.fr-FR.md new file mode 100644 index 00000000..452e875b --- /dev/null +++ b/src/data-structures/queue/README.fr-FR.md @@ -0,0 +1,28 @@ +# File + +En informatique, une **file**, aussi appelée file d'attente, est +sorte particulière de structure de données abstraite dans lequel +les entités de la collection sont conservées dans l'ordre et les +opérations principales sur la collection sont le résultat de l'ajout +d'entités à la position terminale arrière, connue sous le nom de mise +en file d'attente ("enqueue"), et de la suppression des entités de la +position terminale avant, appelée retrait de la file d'attente ("dequeu"). + +Cela fait de la file d'attente une structure de données PEPS (premier entré, +premier sorti), en anglais FIFO (first in, first out). Dans une structure de données +PEPS, le premier élément ajouté à la file d'attente sera le premier à être +supprimé. Cela équivaut à l'exigence qu'une fois qu'un nouvel élément est +ajouté, tous les éléments qui ont été ajoutés auparavant doivent être supprimés +avant que le nouvel élément ne puisse être supprimé. Souvent, une opération d'aperçu +ou de front est également intégrée, renvoyant la valeur de l'élément avant +sans le retirer de la file d'attente. Une file d'attente est un exemple de +structure de données linéaire, ou, plus abstraitement, une collection séquentielle. + +Représentation d'une file PEPS (premier entré, premier sorti) + +![Queue](https://upload.wikimedia.org/wikipedia/commons/5/52/Data_Queue.svg) + +## Références + +- [Wikipedia](https://fr.wikipedia.org/wiki/File_(structure_de_donn%C3%A9es)) +- [YouTube](https://www.youtube.com/watch?v=wjI1WNcIntg&list=PLLXdhg_r2hKA7DPDsunoDZ-Z769jWn4R8&index=3&) diff --git a/src/data-structures/queue/README.md b/src/data-structures/queue/README.md index c546d8be..e6c9bc2d 100644 --- a/src/data-structures/queue/README.md +++ b/src/data-structures/queue/README.md @@ -4,6 +4,7 @@ _Read this in other languages:_ [_简体中文_](README.zh-CN.md), [_Русский_](README.ru-RU.md), [_日本語_](README.ja-JP.md), +[_Français_](README.fr-FR.md), [_Português_](README.pt-BR.md) In computer science, a **queue** is a particular kind of abstract data diff --git a/src/data-structures/stack/README.fr-FR.md b/src/data-structures/stack/README.fr-FR.md new file mode 100644 index 00000000..5e9a95c8 --- /dev/null +++ b/src/data-structures/stack/README.fr-FR.md @@ -0,0 +1,28 @@ +# Pile + +En informatique, une **pile** est un type de données abstrait +qui sert de collection d'éléments, avec deux opérations principales: + +* **empiler** (en anglais *push*), qui ajoute un élément à la collection, et +* **dépiler** (en anglais *pop*), qui supprime l'élément le plus récemment +ajouté qui n'a pas encore été supprimé. + +L'ordre dans lequel les éléments sortent d'une pile donne +lieu à son nom alternatif, LIFO ("last in, first out", +littéralement "dernier arrivé, premier sorti"). En outre, +une opération d'aperçu peut donner accès au sommet sans +modifier la pile. Le nom "pile" pour ce type de structure +vient de l'analogie avec un ensemble d'éléments physiques empilés +les uns sur les autres, ce qui permet de retirer facilement un +élément du haut de la pile, tout comme accéder à un élément plus +profond dans le la pile peut nécessiter de retirer plusieurs +autres articles en premier. + +Représentation simple de l'éxecution d'une pile avec des opérations empiler (push) et dépiler (pop). + +![Stack](https://upload.wikimedia.org/wikipedia/commons/b/b4/Lifo_stack.png) + +## Références + +- [Wikipedia](https://fr.wikipedia.org/wiki/Pile_(informatique)) +- [YouTube](https://www.youtube.com/watch?v=wjI1WNcIntg&list=PLLXdhg_r2hKA7DPDsunoDZ-Z769jWn4R8&index=3&) diff --git a/src/data-structures/stack/README.md b/src/data-structures/stack/README.md index 1765f9b4..dc4f311b 100644 --- a/src/data-structures/stack/README.md +++ b/src/data-structures/stack/README.md @@ -4,6 +4,7 @@ _Read this in other languages:_ [_简体中文_](README.zh-CN.md), [_Русский_](README.ru-RU.md), [_日本語_](README.ja-JP.md), +[_Français_](README.fr-FR.md), [_Português_](README.pt-BR.md) In computer science, a **stack** is an abstract data type that serves