Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
969 connectés 

  FORUM HardWare.fr
  Programmation
  Algo

  Algorithme de creation d'un arbre balance

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Algorithme de creation d'un arbre balance

n°538018
CDr
Posté le 13-10-2003 à 11:47:21  profilanswer
 

Bonjour,
 
Je souhaite realiser un programme utilisant les arbres balances sauf que je n'arrive pas a realiser l'algorithme d'insertion d'un element dans cet arbre. Un peu d'aide serait la bienvenue (ou des liens si vous avez).
Merci


---------------
CDr
mood
Publicité
Posté le 13-10-2003 à 11:47:21  profilanswer
 

n°539035
Sars
Posté le 14-10-2003 à 10:52:39  profilanswer
 

C'est quoi que t'appelles un arbre balancé ?

n°539393
BifaceMcLe​OD
The HighGlandeur
Posté le 14-10-2003 à 16:09:06  profilanswer
 

C'est du franglais, je suppose, il veut parler d'arbres équililbrés (balanced trees en anglais).
 
cdr> Après, reste à savoir si tu parles d'arbres binaires ou de B-Trees. Mais dans tous les cas, tu dois pouvoir trouver ton bonheur sur Google.

n°539536
CDr
Posté le 14-10-2003 à 18:19:28  profilanswer
 

On nou les a montrés comme ça, il ne s'agit pas d'arbres binaires équilibrés, c'est plus que ça. J'ai fait de nombreuses recherches sur google mais à par des exemples ou des descriptions sommaires j'ai rien alors que les algorithmes ne sont pas évident (je suis pas doué c'est vrai).
 
Sur cette page on peut voir une applet réalisant un arbre balancé mais je n'ai pas trouvé les sources.

n°539650
LeGreg
Posté le 14-10-2003 à 20:59:37  profilanswer
 

Tu peux soit l'équilibrer à la création  
(choix d'un point médian à chaque noeud pour avoir autant d'élément à gauche qu'à droite)
soit ajouter les éléments dans n'importe quel ordre
et appliquer un algo style "swing left/swing right"
pour équilibrer branche par branche.
 
La deuxième solution s'impose si tu veux ajouter/retirer constamment des éléments dans ton tableau.
 
LeGreg

n°539759
CDr
Posté le 14-10-2003 à 22:50:13  profilanswer
 

Normalement il est équilibré après chaque insertion. C'est d'ailleurs cet algo qui est compliqué et non l'insertion.
Là je me suis tourné vers un arbre binaire équilibré, l'équilibrage est plus facile car il n'y a qu'une seule clé par noeud et non pas plusieurs comme dans un arbre balancé (je me serais orienté vers un arbre balancé d'ordre 1 donc il y aurait eu 2 clés par noeud mais l'algo n'était vraiment pas évident et je n'ai pas le temps de le faire).

n°539867
nraynaud
lol
Posté le 15-10-2003 à 00:55:30  profilanswer
 

http://www.lri.fr/~filliatr/fsets/ tiens quelques implémentations en caml prouvées formellement (et débuggées ... hum).

n°539889
the real m​oins moins
Posté le 15-10-2003 à 01:20:06  profilanswer
 

jcomprend rien à ces trucs [:psywalk]


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
n°539929
matafan
Posté le 15-10-2003 à 04:44:34  profilanswer
 

Fait une recherche google sur « red-black trees » et « AVL trees ».

n°541660
CDr
Posté le 16-10-2003 à 18:31:56  profilanswer
 

Les red-black trees et AVL trees sont des arbres binaires équilibrés, c'est différent de ce que je cherche. Mes arbres balancés possèdent plusieurs clés par noeud (ce qui réduit le nombre de noeud et regroupe les valeurs pour les lectures sur disque par exemple).

mood
Publicité
Posté le 16-10-2003 à 18:31:56  profilanswer
 

n°547654
Giz
Posté le 22-10-2003 à 19:19:43  profilanswer
 

cdr a écrit :

Les red-black trees et AVL trees sont des arbres binaires équilibrés, c'est différent de ce que je cherche. Mes arbres balancés possèdent plusieurs clés par noeud (ce qui réduit le nombre de noeud et regroupe les valeurs pour les lectures sur disque par exemple).


 
c étonnant ton exo, quand on parle d'arbres balancés en principe c pour les arbres binaires (arbre AVL). Pour des arbres n-aires, cela commence a devenir inutile du fait de la tres faible profondeur de l'arbre :/
t sur que c pas pour un arbre binaire ?


Message édité par Giz le 22-10-2003 à 19:20:09
n°548835
CDr
Posté le 23-10-2003 à 18:36:19  profilanswer
 

Justement la très faible profondeur est un avantage car ça permet de regrouper au même endroit les données, et cet avantage est immédiat sur disque puisque la lecture d'une page permet d'avoir plusieurs valeurs.
Enfin je vais pouvoir me débrouiller avec un arbre binaire équilibré, peut-être que je tenterai mieux plus tard.
Merci pour vos réponses

n°549200
os2
Posté le 23-10-2003 à 23:53:52  profilanswer
 

vous avez ça dans vos tirroir un algo pour rebalancer un arbre


---------------
Borland rulez: http://pages.infinit.net/borland
n°549225
nraynaud
lol
Posté le 24-10-2003 à 00:44:58  profilanswer
 

<--- lisez ici !
 

os2 a écrit :

vous avez ça dans vos tirroir un algo pour rebalancer un arbre


http://brassens.upmf-grenoble.fr/I [...] resAVL.htm
merci à  
http://www.google.com/search?hl=en [...] gle+Search
pour son efficacité !
 
au passage, "to balance" veut dire "equilibrer" dans notre chère langue de Molière.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Algo

  Algorithme de creation d'un arbre balance

 

Sujets relatifs
Algorithme de B-TreeSWT, comment afficher des icones dans un arbre?
[LDAP] Création d'usager Java ou Perl?logiciels création image-map
arbre de rechercheTableau d objet, creation dobjet commetn faire dans ce cas :
algorithme de conversion RGB>YUVcréation d'un site en html
Besoin d'aide dans la création de mon site{NEWBIE] besoin d'aide pour la création de mon site
Plus de sujets relatifs à : Algorithme de creation d'un arbre balance


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR