Chapitre 3 (fin). Les arbres AVL

Slides:



Advertisements
Présentations similaires
Structures de données avancées : B arbres
Advertisements

Structures de données avancées : Principales structures de données
Chapitre 3 Les arbres binaires
Algorithmes à base darbre BSP. Principe Se servir dune structure arborescente afin déliminer le traitement dune branche entière sur un test de visualisation.
Cours 8 Arbres équilibrés
Structures de données linéaires
Cours d’Algorithmique
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
IFT-2000: Structures de Données
Chapitre VII. Tri Tri par tas Tri rapide.
RECURSIVITE ARBRES BINAIRES
II. Chaînage, SDD séquentielles
Arbre Rouge Noir.
Définition d’un maillon de liste
TD4 2 MIC Romaric GUILLERM Algo-Prog en Ada.
IFT-2000: Structures de Données Listes chaînées Dominic Genest, 2009.
Arbres Un arbre est une structure de données organisées de façon hiérarchique, à partir d’un nœud distingué appelé racine. Très importante en informatique!.
Sections sélectionnées du Chapitre 11
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
Modèles d’implantation
Structures de données IFT-2000
Gestion de Fichiers Indexes basés sur les structures d’arbres binaires et indexes à niveaux multiples.
Gestion de Fichiers Hachage Extensible.
Arbres binaires complets
Les arbres et tas binomiaux
Arbres équilibrés Les transformation restructurantes dans leur ordre de définition: LL RR LR RL Facteur d’équilibre de noeud = (hauteur de s-arbre a gauche)
Gestion de Fichiers GF-12: Comment Gerer les Indexes qui ne tiennent pas en Memoire de Maniere Efficace?: I. Indexes Bases sur les Structures dArbres Binaires.
Exposé en structures de données
IFT-2000: Structures de données Piles et files Dominic Genest, 2009.
IV. Arbres  Arbre binaire (AB) Représentation SDD d’un AB
Les rotations Voici un autre exemple dajout. Celui-ci engendre un cas simple de déséquilibre, car larbre.
Structures de données IFT-2000
LES ARBRES Un arbre est une structure homogène dont chaque élément,
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.
201 UMLV  Type « dictionnaire » sous-ensembles finis de E (ordonné) avec les opérations : Ens_vide :  Ens Ajouter : Ens x Elément  Ens Enlever.
Le langage C Structures de données
Structures de données avancées : Arbres AVL & Arbres Rouge et Noir
Un exemple détaillé Pour chaque noeud on mettra 0 si ses deux sous-arbres ont la même hauteur +n si le sous-arbre gauche est plus profond avec une différence.
Ch. PAUL - Piles et Files à l'aide de listes chainées
Structures de données avancées : Arbres Red-Black
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.
Arbres binaires et tables de hachage
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)
ETNA – 1ème année Guillaume Belmas –
Structures de données avancées : Arbres ‘Left Leaning Red-Black’
Structures de données avancées : Arbres AA
Structures de données avancées : LH (Hachage linéaire) D. E ZEGOUR Institut National d ’Informatique.
Algorithmique et Conception Objet
B.Shishedjiev - Modèle relationnel
Structures de données avancées : B arbres
Arbres AVL Arbres AVL.
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.
Structures de données avancées : Principales structures de données
Structures de données IFT-2000
Structures de données IFT-2000 Abder Alikacem Semaine 10 Les algorithmes de recherche Les structures arborescentes Département d’informatique et de génie.
Les monceaux (Heap) Monceaux Propriétés des Monceaux
Arbres AVL - Hauteur d’un arbre AVL - Insertion et restructuration
4/25/2017 4:30 PM Arbres (2,4) CSI2510 CSI2510.
Raison d'être de la structure de fichiers : Les premiers travaux : Début des années 1960 : En 1963 : Près de 10 ans plus tard... (à peu près 1973) : Durant.
. Le B-Arbre.
Informatique 2A Langage C 5ème séance. Déroulement de la séance 5 1 ère partie Étude des chaînes de caractères 2 ème partie Les structures 3.
Transcription de la présentation:

Chapitre 3 (fin). Les arbres AVL Andelson –Velskii et Landis Les auteurs de arbres AVL

Les ABOH ont le défaut de pouvoir être déséquilibrés Les ABOH ont le défaut de pouvoir être déséquilibrés. Les AVL sont des ABOH qui garantissent un équilibre partiel. Il n’y a pas d’éléments identiques. Les algorithmes Ajout et Suppression tiennent compte de l’équilibre, ils réorganisent l’équilibre de l’arbre. Structure d’un AVL typedef struct noeud_avl { T info;  -1 hsag - hsad = 1 int balance; 0 hsag = hsad struct avl sag,, sad ;  +1 hsad - hsag = 1 } noeud_avl; typedef noeud_avl* avl

Ajout dans un AVL A est un nœud le plus proche du nœud inséré avec le facteur de balance devenu 2 après la dernière insertion. (Ascendant du nœud inséré) GG : nouveau sommet Y est inséré dans le sag de sag de A. GD : nouveau sommet Y est inséré dans le sad de sag de A. DD : nouveau sommet Y est inséré dans le sad de sad de A. DG : nouveau sommet Y est inséré dans le sag de sad de A. GG est symétrique à DD, et GD est symétrique à DG. Donc, il suffit de voir comment le rééquilibrage est fait pour le cas gauche-gauche et le cas gauche-droite. Les cas droite-droite et droite-gauche sont gérés de façon symétrique.

Cas gauche-gauche Si le dépassement de hauteur du sag est du à une augmentation de hauteur de son propre sag, on est dans le cas gauche-gauche. La situation et la réorganisation nécessaire sont les suivantes : -1 h h h

On rajoute un élément dans le sag du sag de A. A B B A On effectue une rotation : A dévient le fils droit du B, le fils droit du B dévient le fils gauche du A. -2 -1 h h + h h h + h 1 1

Cas gauche-droite Si le dépassement de hauteur du sag est du à une augmentation de hauteur de son sad, on est dans le cas gauche-droite. La situation et la réorganisation nécessaire sont les suivantes : a) A On rajoute un élément dans le sad B du sag de A. A C B B A C On effectue une rotation : A dévient le fils droit du C, B dévient le fils gauche du C. -1 -2 1

On rajoute un élément dans le sag du C. b. A B h C h h-1 h-1 On rajoute un élément dans le sag du C. -1

A C B A B h C h h h-1 h h-1 h-1 +1 On effectue une rotation : A dévient le fils droit du C, B dévient le fils gauche du C, le fils gauche du C dévient le fils droit du B, le fils droit du C dévient le fils gauche du A. -2 1 1 -1

On rajoute un élément dans le sad du C. B h h C h-1 h-1 On rajoute un élément dans le sad du C. -1

On effectue une rotation : B A h h-1 h h h A B h h C h-1 h-1 +1 On effectue une rotation : A dévient le fils droit du C, B dévient le fils gauche du C, le fils gauche du C dévient le fils droit du B, le fils droit du C dévient le fils gauche du A. -2 -1 1 1