[scheme], organisation d'une liste

, organisation d'une liste [scheme] - Programmation

Marsh Posté le 11-04-2001 à 10:23:16    

ca y'est, pour ceux qui se souviennent, j'ai capter les ABO.
donc maintenant, pour construire un arbre binaire ordonne equilibre, je doit trier la liste comme cela :  
par exemple ;  
 
(1 2 3 4 5 6 7 8 9 10)
 
-> 5 (1 2 3 4) (6 7 8 9 10)
-> 5 2 (1 3) (4) 8 (6 7) (9 10)
-> 5 2 1 3 4 6 7 9 10
 
 
 
donc on prend le milieu de la liste . (milieu (gauche delaliste) ) (milieu (droit de laliste))
gauchedelaliste : ce qu'il y'a avant le milieu (exclu)
droitedelaliste : ce qu'il y'a apres.
 
mais ca marche pas......:( :( :( :( :( :(
 
qq'un a une idee ???

Reply

Marsh Posté le 11-04-2001 à 10:23:16   

Reply

Marsh Posté le 11-04-2001 à 10:51:48    

Qu'est ce qui marche pas ?  
 
 
De toute façon à la base ta démarche n'est pas bonne si tu supposes que la liste (des éléments à insérer  dans l'arbre)  est triée car c'est rarement le cas surtout lors d'une mise à jour de l'arbre (tu n'as pas au départ tous les éléments à insérer donc tu ne peux pas trier de liste.)
 
La dernière fois je t'ai donné la base de l'algorithme à utiliser pour construire ton arbre.

Reply

Marsh Posté le 11-04-2001 à 10:56:43    

vi je sais.
mais bon je me reexplique.
je dois construire un arbre a partir d'une liste, celle ci etant deja definie.
donc pour optimiser la recherche, l'ABO c'est le top.
donc si j'organise ma liste comme ca, j'aurais 1 ABO equilibre, donc le top du top.
 
d'ou ma fonction pour trier la liste.

Reply

Marsh Posté le 11-04-2001 à 11:21:04    

swich a écrit a écrit :

vi je sais.
mais bon je me reexplique.
je dois construire un arbre a partir d'une liste, celle ci etant deja definie.
donc pour optimiser la recherche, l'ABO c'est le top.
donc si j'organise ma liste comme ca, j'aurais 1 ABO equilibre, donc le top du top.
d'ou ma fonction pour trier la liste.




 
Ne t'en fais pas je sais ce qu'est un ABOE, bon tu veux transformer ta liste avant de l'insérer soit, mais quel est ton algo pour insérer les éléments dans l'arbre à partir de ta liste "optimisée" ?

Reply

Marsh Posté le 11-04-2001 à 11:59:59    

t'inquiete pas pour ca c deja fait.
en fait on utilise 2fonctions
inserer : objet,ABO->ABO
si o < racine -> creer-arbre (racine (inserer o gauche ABo) droit (abo))
si o > racine -> creer-arbre (racine gauche (inserer o droit ABo) droit (abo))
...
un truc ds ce genre la quoi; je l'ai plus en tete exactement, mais bon c un truc vu en cours donc logiquement ca doit etre bon.
 
il me manque l'optimisation de la liste...

Reply

Marsh Posté le 12-04-2001 à 15:11:56    

et hop

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed