From 6a7f0d88f870e447bf496098b0b0c5b7bfe9f6dd Mon Sep 17 00:00:00 2001 From: "paul.albuquer" <paul.albuquerque@hesge.ch> Date: Thu, 8 May 2025 20:42:06 +0000 Subject: [PATCH] Edit cours_22.md --- slides/cours_22.md | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/slides/cours_22.md b/slides/cours_22.md index d65e7a6..2bce0ca 100644 --- a/slides/cours_22.md +++ b/slides/cours_22.md @@ -33,7 +33,7 @@ date: "2025-05-09" . . . 0. Rechercher la feuille (la page a aucun enfant) où insérer; -1. Si la page n'est pas pleine insérer dans l'ordre croissant. +1. Si la page n'est pas pleine, insérer dans l'ordre croissant. 2. Si la page est pleine, on sépare la page en son milieu : 1. On trouve la médiane, `M`, de la page; 2. On met les éléments `< M` dans la page de gauche de `M` et les `> M` dans la page de droite de `M`; @@ -92,7 +92,7 @@ date: "2025-05-09" * Si la page est pleine: * On trouve la valeur médiane `M` de la page (quel indice?); * On crée une nouvelle page de droite; - * On copie les valeur à droite de `M` dans la nouvelle page; + * On copie les valeurs à droite de `M` dans la nouvelle page; * On promeut `M` dans la page du dessus; * On connecte le pointeur de gauche de `M` et de droite de `M` avec l'ancienne et la nouvelle page respectivement. @@ -121,9 +121,9 @@ struct element ## Les fonctions utilitaires (5min matrix) ```C -booléen est_feuille(page) // la page est elle une feuille? -entier position(page, valeur) // à quelle indice on insère? -booléen est_dans_page(page, valeur) // la valeur est dans la page +booléen est_feuille(page) // la page est-elle une feuille? +entier position(page, valeur) // à quelle indice insère-t-on? +booléen est_dans_page(page, valeur) // la valeur est-elle dans la page? ``` . . . @@ -356,7 +356,7 @@ page ajouter_niveau(page, element) . . . * Un élément à droite, comment on fait? - * Remonter `7`, serait ok si racine, mais... c'est pas forcément. + * Remonter `7`, serait ok si racine, mais... ce n'est pas forcément le cas. * On redistribue les feuilles. . . . @@ -388,7 +388,7 @@ page ajouter_niveau(page, element) . . . -* `8` est seul, c'est plus un B-arbre : +* `8` est seul, ce n'est plus un B-arbre : * Fusionner le niveau 2 et redistribuer, comment? . . . @@ -404,7 +404,7 @@ page ajouter_niveau(page, element) ## Algorithme pour les feuilles! * Si la clé est supprimée d'une feuille: - * Si on a toujours `n` (ordre de l'arbre) clés dans la feuille on décale simplement les clés. + * Si on a toujours `n` (ordre de l'arbre) clés dans la feuille, on décale simplement les clés. * Sinon on combine (récursivement) avec le nœud voisin et on descend la clé médiane. # Les B-arbres: suppression @@ -442,7 +442,7 @@ page ajouter_niveau(page, element) ## Algorithme pour les non-feuilles! * Si la clé est supprimée d'une page qui n'est pas une feuille: - * On échange la valeur avec la valeur de droite de la page de gauche + * On échange la valeur avec la valeur de droite de la page de gauche. * On supprime comme pour une feuille! ## Et maintenant des exercices par millions! -- GitLab