Structures de données avancées : Arbres AA

Slides:



Advertisements
Présentations similaires
Structures de données avancées : MLH (Multidimensional linear hashing)
Advertisements

Structures de données avancées : Principales structures de fichiers
Structures de données avancées : B arbres
Structures de données avancées : Principales structures de données
Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure dInformatique (ESI)
Structures de données avancées : MBT ( Multidimensional B-trees )
Structures de données avancées : MTH ( Multidimensional trie hashing )
Structures de données avancées : Introduction
Traitement sémantique et grammaire dattributs Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure dInformatique (ESI)
Sémantique des déclarations pour le langage Z minimal
Chapitre 3 (fin). Les arbres AVL
Cours 8 Arbres équilibrés
PBST*: une nouvelle variante des SDDS
LOGO Responsable du cours Mlle Amina GHRAB : 1 ère année IAG Institut Supérieur de Gestion de Tunis.
Les structures de données arborescentes
Arbre binaire de recherche
Chapitre VII. Tri Tri par tas Tri rapide.
RECURSIVITE ARBRES BINAIRES
Arbre Rouge Noir.
Les fichiers indexés (Les B-arbres)
LA STRUCTURE D'ARBRE-B Institut National des Sciences Appliquées – Rouen Département Architecture des Systèmes d’Information.
LES ARBRES IUP 2 Génie Informatique
Arbres Rouge noir Démo : INF3105 Structures de données et algorithmes
Structures de données IFT-2000
Contrôle « rapide » Indiquer votre série GAUCHE ou DROITE
Séance d’introduction
Structures de données IFT-2000
Structures de données IFT Abder Alikacem Semaine 10 Les arbres SPLAY Département dinformatique et de génie logiciel Édition septembre
Structures de données IFT-2000 Abder Alikacem Semaine 11 Gestion des arbres binaires de tri et de recherche. Les arbres cousus. Les arbres n-aires Département.
Structures de données avancées : Arbres AVL & Arbres Rouge et Noir
Structures de données avancées : Hachage dynamique
Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI)
Structures complexes Pr ZEGOUR DJAMEL EDDINE
Expressions logiques Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI)
Structures de données avancées : Arbres Red-Black
Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI)
Structures de données avancées : Introduction
Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI)
Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI)
MIGO ET COMPLEXITE1 ARBRES EQUILIBRES Définition : On dit qu’un arbre binaire est H équilibré si en tout nœud de l’arbre, les hauteurs des sous-arbres.
Sémantique des expressions arithmétiques pour le langage Z minimal Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI)
Tables de compilation pour le langage Z minimal Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI)
Arbres binaires et tables de hachage
Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI)
Le langage Z minimal Pr ZEGOUR DJAMEL EDDINE
Structures de données avancées : Fichiers uni-dimensionnels Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI)
Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI)
Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI)
Structures de données avancées : Arbres ‘Left Leaning Red-Black’
Structures de données avancées : MBT ( Multidimensional B-trees )
L’analyse lexicale Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI)
Structures simples et tableaux Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI)
Structures de données avancées : Fichiers multidimensionnels Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI) zegour.esi.dz
Interprétation/Génération de code pour le langage Z minimal Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI)
Expressions sur les chaînes de caractères Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI)
Chapitre 1 Nombres relatifs.
Structures de données avancées : B arbres
Structures de données avancées : Variantes des B arbres
1 UMLV  FICHIERS Mémoire de masse découpée en blocs Fichier :liste chaînée de blocs, ou arbre de blocs (répertoires - fichiers)‏ Bloc d’éléments Bloc.
Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI) C O M P I L Z.
Structures de données avancées : Principales structures de données
Structures de données avancées : Hachage dynamique
Les monceaux (Heap) Monceaux Propriétés des Monceaux
Organisation de la mémoire pour le langage minimal Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI)
Arbres AVL - Hauteur d’un arbre AVL - Insertion et restructuration
4/25/2017 4:30 PM Arbres (2,4) CSI2510 CSI2510.
Page: 1-Ali Walid Gestion de fichiers. B-Arbre +.
. Le B-Arbre.
Les arbres Arbres binaires
Aa. b b c a.
Transcription de la présentation:

Structures de données avancées : Arbres AA Pr ZEGOUR DJAMEL EDDINE Ecole Supérieure d’Informatique (ESI) http://zegour.esi.dz email: d_zegour@esi.dz

Les arbres de Anderson Des arbres 2-3 vers les arbres BB (Binary B-trees) Lien vertical Lien horizontal 50 90 20 70 120 150 10 30 40 60 80 100 110 130 140 160

Les arbres de Anderson Des arbres 2-3 vers les arbres BB 45° 50 90 20 70 120 150 10 30 40 60 80 100 110 130 140 160 Des arbres 2-3 vers les arbres BB 50 90 20 70 120 150 10 30 40 60 80 100 110 130 140 160 45° Lien vertical Lien horizontal

Les arbres de Anderson 50 90 20 70 120 150 10 30 40 60 80 100 110 130 140 160 Des arbres BB vers les arbres AA (Arne Anderson) 50 90 20 70 120 150 10 30 40 60 80 100 110 130 140 160 1 2 3

Les arbres de Anderson Arbres AA Un arbre AA (Arne Anderson) est un arbre binaire de recherche où chaque nœud a un champ Niveau. Le niveau d’une feuille est égal à 1. Le niveau d’un fils gauche est strictement inférieur au niveau de son pere. Le niveau d’un fils droit est inférieur ou égale au niveau de son pere. Le niveau d’un fils droit doit etre strictement inférieur à celui de son sont grand père. Chaque noeud du niveau supérieur à 1 doit avoir deux fils.

Les arbres de Anderson Arbres AA ( Proprités) Un arbre AA satisfait les propriétés d’un RB avec une restriction : Les fils gauche ne doivent pas etre rouges ( un noeud et son fils gauche ne doivent pas avoir le meme niveau Les algorithmes d’un arbre AA sont très simplifiés par rapport à ceux d’un arbre RB

Les arbres de Anderson Arbres AA (Operations de maintenance) Skew(P) : élimine un lien gauche par une rotation droite Si Niveau (Fg(P)) = Niveau(P) Rotation_Droite(P) Si Niveau (Fd(Fd(P)) = Niveau(P) Rotation_Gauche(P) Inc(Niveau)// Ancien Fd(P) Split(P) : divise un pseudo nœud large par une rotation gauche

Les arbres de Anderson Arbres AA (Insertion) Ajouter un nouveau nœud au niveau 1 Suivre la branche du nouveau nœud vers la racine. Pour chaque nœud P rencontré faire : Skew(P) Split(P)

Les arbres de Anderson Arbres AA (Insertion/ Exemple) 2 1 27 1 SPLIT(6) 1 68 91 68 6 6 6 1 1 1 1 68 68 6 91 1 91 2 2 2 86 68 68 68 SKEW(91) 1 1 1 1 1 1 6 91 6 91 6 86 1 1 1 1 1 27 27 86 27 91

Les arbres de Anderson Arbres AA (Insertion/ Exemple) 2 2 90 SKEW(91) SPLIT(86) 2 68 68 68 1 1 1 1 1 1 6 86 6 86 6 86 1 1 1 1 1 1 91 27 90 27 27 91 1 2 1 68 91 90 2 1 6 90 44, 45, 85, 82, 26, 50, 39 1 1 1 27 86 91

Les arbres de Anderson Arbres AA(Insertion/ Exemple) 3 2 2 2 1 2 1 1 1 68 2 2 27 85 2 1 2 1 6 45 82 90 1 1 1 1 1 26 39 50 86 91 1 44

Les arbres de Anderson Arbres AA (Suppression) Supprimer le nœud de la feuille Suivre la branche du nœud supprimé vers la racine. Pour chaque nœud P rencontré faire : Si la différence de niveau entre P et l’un de ses fils devient égale à 2, décrémenter le niveau de P par une unité. Si , après, le niveau de P est égal au niveau de son fils doit, décrémenter le niveau de ce dernier. Skew(P) Split(P)

Les arbres de Anderson Arbres AA(Suppression/ Exemple) 3 2 2 2 2 1 1 1 68 2 2 27 85 2 2 1 1 6 45 82 90 1 1 1 1 1 26 39 50 86 91 1 6 44

Les arbres de Anderson Arbres AA(Suppression/ Exemple) 3 2 2 2 1 2 1 1 68 2 2 27 85 2 1 2 1 26 45 82 90 1 1 1 1 39 50 86 91 1 Remplacer 68 par 82 Niv(85) 1; Niv(90)1 Skew(90); Split(85) 68 44

Les arbres de Anderson Arbres AA(Suppression/ Exemple) 3 2 2 2 1 1 1 1 82 2 2 27 86 2 1 1 1 26 45 85 90 1 1 1 39 50 91 1 91, 27 44

Les arbres de Anderson Arbres AA(Suppression/ Exemple) 3 2 2 2 1 1 1 1 82 2 2 39 86 2 1 1 1 26 45 85 90 1 1 44 50 Remplacer 86 par 90 Niv(90) 1; Skew(90) 86

Les arbres de Anderson Arbres AA(Suppression/ Exemple) 3 1 2 2 1 1 1 1 82 2 1 39 85 2 1 1 26 45 90 1 1 44 50 Niv(82)2; Skew(82)

Les arbres de Anderson Arbres AA(Suppression/ Exemple) 2 1 2 2 1 1 1 1 39 1 2 26 82 2 1 45 85 1 1 1 44 50 90 Skew(82)

Les arbres de Anderson Arbres AA(Suppression/ Exemple) 2 2 1 2 1 1 1 1 39 2 45 1 26 2 1 82 44 1 1 50 85 1 90 Split(39)

Les arbres de Anderson Arbres AA(Suppression/ Exemple) 3 2 2 1 1 1 1 1 45 2 2 39 82 1 1 1 1 26 44 50 85 1 90 90

Les arbres de Anderson Arbres AA(Suppression/ Exemple) 3 2 2 1 1 1 1 45 2 2 39 82 1 1 1 1 26 44 50 85 Niv(39) 1; Skew(39); Niv(45) 2 44

Les arbres de Anderson Arbres AA(Suppression/ Exemple) 2 1 2 1 1 1 45 1 2 26 82 1 1 1 39 50 85 Remplacer 45 par 50 Niv(82) 1; 45

Les arbres de Anderson Arbres AA(Suppression/ Exemple) 1 2 1 2 85 82 1 26 1 50 2 39 82 26 1 50 2 39 85 82 50 26 1 39 2 Niv(50) 1; Skew(50); Skew(50); Split(26)

Les arbres de Anderson Arbres AA comme des arbres RB particuliers 50 90 20 70 120 150 10 30 40 60 80 100 110 130 140 160 Arbres AA comme des arbres RB particuliers 50 90 20 70 120 150 10 30 40 60 80 100 110 130 140 160