[PDF] INF601 : Algorithme et Structure de données - Cours 2 : TDA Arbre





Previous PDF Next PDF



Arbres binaires de recherche [br] Algorithmique

Un arbre binaire de recherche est une structure de donnée qui permet de représen- sont l'insertion la suppression et la recherche d'une valeur.



INF601 : Algorithme et Structure de données - Cours 2 : TDA Arbre

27 févr. 2010 INF601 : Algorithme et Structure de données ... adjonction et suppression peuvent être en O(n) ... celle de l'arbre binaire de recherche ...



Algorithmes sur les arbres binaires de recherche

Seconde implémentation : Arbre Binaire de Recherche Recherche puis suppression dans le cas où l'élément est dans une feuille. `a supprimer.



ARBRES BINAIRES DE RECHERCHE

temps de ?(logn) au pire tableau trié : insertion/suppression en ?(n) au pire cas Dans un arbre binaire de recherche chaque nœud a une clé.



Chapitre 2 Structures de données arborescentes : arbres binaires

2. Arbres binaires de recherche. 2.1 Algorithmes de recherche dans un ABR. 2.2 Insertion et suppression dans un ABR. 2.3 Équilibrage des ABR.



CONCEPTION ALGORITHMIQUE 1. Programmation Dynamique La

des arbres binaires de recherche optimaux. 1. Programmation Dynamique Nous allons décomposer l'algorithme de suppression en trois parties.



Arbres rouge et noir [rn] Algorithmique

insertion et suppression la recherche étant celles des arbres binaires de Un arbre binaire de recherche est un arbre rouge et noir s'il satisfait les ...



Révision Final

Si k est dans l'arbre l'algorithme chercher(k) se terminera sur un noeud interne v. Supprimer dans un arbre binaire de recherche (suite).



Arbres AVL AV - L

exécuter l'algorithme d'insertion d'un arbre binaire de recherche. Pour supprimer un élément de clé k dans un arbre AVL on commence par.



Rappels algorithmiques

parcours pour les arbres binaires les algorithmes de recherche et de mise à suppression de la clé à la racine dans l'arbre binaire de recherche de la.



Arbres binaires de recherche [br] Algorithmique - Unisciel

Un arbre binaire de recherche est une structure de donn ee qui permet de repr esen-ter un ensemble de valeurs si l’on dispose d’une relation d’ordre sur ces valeurs Les op erations caract eristiques sont l’insertion la suppression et la recherche d’une valeur Ces op erations sont peu cou^teuses si l’arbre n’est pas trop d es



Algorithmique avancée - Arbres binaires de recherche

Un arbre binaire de recherche (ABR) est un arbre binaire dans lequel chaque nœud possède une clé telle que • chaque nœud du sous-arbre gauche possède une clé inférieure ou égale à celle du nœud considéré • chaque nœud du sous-arbre droit possède une clé supérieure ou égale à celle-ci



ARBRES BINAIRES DE RECHERCHE - Université de Montréal

A l’aide d’un arbre de recherche on peut impl` ementer une table de symboles d’une´ maniere tr` es ef?cace ` Operations :´ recherche d’une valeur particuliere` insertion ou suppression d’une valeur recherche de min ou max et des autres Pour la discussion des arbres binaires de recherche on va considerer les pointeurs´



Algo 2 séance 6 Arbres binaires de recherche (ABR (suite

Algo 2 { s eance 6 Arbres binaires de recherche (ABR (suite) : suppression et arbres equilibr es Franck Hetroy et Denis Trystram mars 2017 1/37 ECOLE NATIONALE SUPERIEURE 1 / 37



Searches related to arbre binaire de recherche algorithme suppression PDF

mais insertion/suppression en (1) [si non-tri´e]? tableau tri´e : recherche binaire — temps de (log n) au pire mais insertion/suppression en ( n) au pire cas 13 2 Arbre binaire de recherche (ABR) (fr) 9 6 12 3 8 11 15 1 4 7 19 chaque nœud interne poss`ede une cl ´e : les cl es sont´ comparables De?nition 13 1 ´ Dans un arbre binaire

Qu'est-ce que l'arbre binaire de recherche?

Un arbre binaire de recherche (ABR) est un type de données abstrait constitué d’un couple (clé,valeur).  Chaque élément a une clé unique, i.e une clé identi?e un élément de façon unique.  Les clés dans un sous arbre gauche non vide doivent être inférieures à la clé de la racine de ce sous arbre.

Comment manipuler un arbre binaire?

?Un arbre binaire est : ? soit l’arbre vide ? soit un nœud qui a exactement deux fils (éventuellement vides) ?Pour manipuler les arbres binaires, on a besoin de primitives ? d’accès ? de test ? de construction Licence Lyon1 - UE LIF3 M. Lefevre - N. Guin - F. Zara

Quelle est la structure hiérarchique d'un arbre binaire?

NSI Terminale S2 : Structures hiérarchiques : Arbres 2/19 binaire. Dans un arbre binaire, on a au maximum 2 branches qui partent d'un élément (pour le système de fichiers, on a 7 branches qui partent de la racine : ce n'est donc pas un arbre binaire). Dans la suite nous allons uniquement travailler sur les arbres binaires 2. Arbre binaire

Comment supprimer un nœud d’un arbre binaire de recherche ?

Supprimez récursivement minnode du sous-arbre de droite. Retournez le pointeur vers la racine d’origine. En moyenne, la complexité temporelle de la suppression d’un nœud d’une BST est de l’ordre de la hauteur de l’arbre binaire de recherche. En moyenne, la hauteur d’une BST est de O (logn).

INF601 : Algorithme et Structure de données

Cours 2 : TDA Arbre Binaire

B. Jacob

IC2/LIUM

27 février 2010

INF601 : Algorithme et Structure de données

Plan

1Introduction

2Primitives du TDA Arbin

3Réalisations du TDA Arbin

par cellules chaînées par cellules contiguës par curseurs (faux pointeurs)

Réalisation des Arbres parfaits

4Recherche d"un élément

5Adjonction d"un élément

Adjonction aux feuilles

Adjonction à la racine

6Suppression d"un élément

7Conclusion sur les arbres

INF601 : Algorithme et Structure de données

IntroductionPlan

1Introduction

INF601 : Algorithme et Structure de données

IntroductionMéthodes arborescentes

Cours précédent

si ensemble d"éléments sont dans un TDA Liste triée

!recherche d"un élément enlog(n)comparaisonsProblème: rep résentationcontiguë (liste) mal adaptée lo rsque

l"ensemble évolue dynamiquement !adjonction et suppression peuvent être enO(n)Solution: p ourque les 3 op érations recherche adjonction suppression soient efficaces!structures arborescentes

INF601 : Algorithme et Structure de données

IntroductionMéthodes arborescentes

Elles reposent sur

1une comparaison avec la valeur d"un noeud

2"l"aiguillage" de la poursuite de la recherche dans un

sous-arbre en fonction du résultat de la comparaison La structure fondamentale des méthodes arborescentes !celle de l"arbre binaire de recherche

INF601 : Algorithme et Structure de données

IntroductionDéfinitions informelle

Définition informelle

un arbre = ensemble de sommets tel que :

9un sommet unique appelé racinerqui n"a pas de supérieurTous les autres sommets sont atteints à partir derpar une

branche uniqueDéfinition récursive (et constructive) un arbre = une racinerune liste d"arbres disjointsA1;:::;An(sous-arbres) Un sommet de l"arbre est la racine d"un sous-arbre

INF601 : Algorithme et Structure de données

IntroductionTerminologie

père d"un sommet : le p rédécesseurd"un sommet fils d"un sommet : les successeurs d"un sommet frères : des sommets qui ont le même p ère noeud = sommet racine : no eudsans p ère feuille : no eudsans fils branche : chemin entre 2 no euds

INF601 : Algorithme et Structure de données

IntroductionMesures sur les arbres

Niveau (profondeur) d"un noeud

: la longueur de la b ranche depuis la racineHauteur d"un noeud: la longueur de la plus longue b ranchede ce noeud jusqu"à une feuilleHauteur d"un arbre: la hauteur de la racine

Taille d"un arbre

: nomb rede s essommets

INF601 : Algorithme et Structure de données

IntroductionArbres Binaires

Définition informelle

Dans un arbre binaire tout noeud a au plus deux fils Un arbre binaire possède exactement deux sous-arbres (éventuellement vides)Définition récursive (et constructive)

Un arbre binaire est

Soit vide

Soit composé

d"une racinerde 2 sous arbres binaires ABG et ABD disjoints

ABG : sous Arbre Binaire Gauche

ABD : sous Arbre Binaire Droit

INF601 : Algorithme et Structure de données

IntroductionEléments dans un arbre binaire

Généralement dans un arbre binaire

noeud racine contient un élémentXdans ABG!noeudsXdans ABD!noeuds>XracineX sous-arbre Droit X sous-arbre

Gauche

X

INF601 : Algorithme et Structure de données

IntroductionOrganisation d"un arbre binaireabcdegf

INF601 : Algorithme et Structure de données

IntroductionOrganisation d"un arbre binaireabcdegfracinesous arbre Gauchesous arbre Droit

INF601 : Algorithme et Structure de données

IntroductionOrganisation d"un arbre binaireabcdegfracineracineABGABGABDABD

INF601 : Algorithme et Structure de données

IntroductionArbres binaires particuliers

Arbre binaire dégénéré, filiforme

: Chaque no eudp ossède exactement un fils !à éviterArbre binaire complet (uniforme): Chaque niveau est complètement rempli I.E. Tout sommet est soit une feuille au dernier niveau, soit possède exactement 2 fils !situation idéaleArbre binaire parfait (presque complet): T ousles niveaux sont complètement remplis sauf éventuellement le dernier et dans

ce cas les feuilles sont le plus à gauche possibleArbre binaire équilibré: La différence de hauteur entre 2 frères

ne peut dépasser 1

INF601 : Algorithme et Structure de données

IntroductionArbres particuliers

Arbre Parfait!situation idéalewylbcdefutvagzx

INF601 : Algorithme et Structure de données

IntroductionArbres particuliers

Arbre dégénéré!Pire des situationswylz

INF601 : Algorithme et Structure de données

IntroductionArbres particuliers

Arbre presque parfaitwylbcdefuag

INF601 : Algorithme et Structure de données

IntroductionArbres particuliers

Arbre équilibréwylzxbcdefu

INF601 : Algorithme et Structure de données

PrimitivesPlan

2Primitives du TDA Arbin

INF601 : Algorithme et Structure de données

PrimitivesDéfinitions des primitives

Utilise le TDA ELEMENT

Primitives :Création et destruction

Construction

Primitives de modification d"un arbre non vide

Accès aux caractéristiques des noeuds (aux éléments)

INF601 : Algorithme et Structure de données

RéalisationPlan

3Réalisations du TDA Arbin

par cellules chaînées par cellules contiguës par curseurs (faux pointeurs)

Réalisation des Arbres parfaits

INF601 : Algorithme et Structure de données

Réalisation

par cellules chaînéesPlan

3Réalisations du TDA Arbin

par cellules chaînées par cellules contiguës par curseurs (faux pointeurs)

Réalisation des Arbres parfaits

INF601 : Algorithme et Structure de données

Réalisation

par cellules chaînéesPointeurs sur ABG et ABD Un a rbre binaire est soit un pointeur sur le noeud racine (arbre non vide) le pointeur NULL (arbre vide) Un no eud est une structure à trois champs : Une étiquette (élément) le sous-arbre gauche le sous-arbre droit

Avantages

: Définition récursive, simple à programmer, la plus utilisée

Inconvénients

: consomme de la mémoire dynamique

INF601 : Algorithme et Structure de données

Réalisation

par cellules chaînéesTraduction en C /Definition d "un noeud/ typedef structnoeud {

ELEMENT etiq ;/Etiquette/

structnoeudag ,/ABG/ ad ;/ABD/ } NOEUD; /Definition d "un arbre = un pointeur sur son Noeud racine/ typedefNOEUDARBIN ; /l " arbre vide est le pointeur null/ #defineARBRE_VIDE NULL

INF601 : Algorithme et Structure de données

Réalisation

par cellules chaînéesSchéma réalisation par pointeursacbdfARBINNOEUDetiqadagNULL

INF601 : Algorithme et Structure de données

Réalisation

par cellules contiguësPlan

3Réalisations du TDA Arbin

par cellules chaînées par cellules contiguës par curseurs (faux pointeurs)

Réalisation des Arbres parfaits

INF601 : Algorithme et Structure de données

Réalisation

par cellules contiguësPar tableau Un a rbre est une structure à deux champs :

Un tableau où sont mémorisés les noeuds

Un entier qui donne l"indice de la racine dans le tableau Un no eud est une structure à 3 champs : L"étiquette du noeud Les indices de ses fils gauche et droit (ou 0 si pas de fils)

Inconvénients

: Définition non récursive (arbre6=sous-arbre)Utilisée uniquement si on traite un arbre unique

INF601 : Algorithme et Structure de données

Réalisation

par cellules contiguësTraduction en C /Definition d "un noeud/ typedef structnoeud {

ELEMENT etiq ;/Etiquette/

intfg ,/ABG/ fd ;/ABD/ } NOEUD; /Definition d "un arbre/ typedef struct{

NOEUD tab [TAILLE_MAX] ;

intracine ; } rep ; typedefrepARBIN ;

INF601 : Algorithme et Structure de données

Réalisation

quotesdbs_dbs23.pdfusesText_29
[PDF] parcours en profondeur arbre

[PDF] arbre binaire complet

[PDF] dénombrement cours

[PDF] arbre de probabilité pile ou face

[PDF] arbre de probabilité seconde

[PDF] arbre probabilité conditionnelle

[PDF] arbre de décision exercices corrigés

[PDF] arbre de décision data mining

[PDF] cours arbre de décision

[PDF] classification par arbre de décision

[PDF] arbre de décision exemple

[PDF] arbre de décision cart

[PDF] construire un arbre de décision

[PDF] arbre de décision définition

[PDF] dénombrement cours 1ere s