à tous les vrai programmeurs
Fermé
zargoss
Messages postés
78
Date d'inscription
mercredi 12 décembre 2007
Statut
Membre
Dernière intervention
14 juin 2008
-
15 mai 2008 à 00:42
byakhlefncr Messages postés 260 Date d'inscription vendredi 1 juillet 2005 Statut Membre Dernière intervention 11 septembre 2008 - 15 mai 2008 à 03:14
byakhlefncr Messages postés 260 Date d'inscription vendredi 1 juillet 2005 Statut Membre Dernière intervention 11 septembre 2008 - 15 mai 2008 à 03:14
5 réponses
dj-postka
Messages postés
2305
Date d'inscription
dimanche 11 mai 2008
Statut
Membre
Dernière intervention
11 février 2019
302
15 mai 2008 à 00:44
15 mai 2008 à 00:44
je ne suis pas programeur mais le binaire ce n'est pas que des 0 et des 1???
zargoss
Messages postés
78
Date d'inscription
mercredi 12 décembre 2007
Statut
Membre
Dernière intervention
14 juin 2008
3
15 mai 2008 à 00:44
15 mai 2008 à 00:44
voila j'ai tenté de faire cela mais donne rien
arbre* enregistrer(arbre *a) {
arbre*valeur;
FILE*fichier = NULL;
fichier=fopen("C:\tp_c\test","r+");
if(!estVide(a))
prefixe(a);
ecritureFichier(a);
}
qq un peu me dire comment adapter cela pour qu'il fonctionne
arbre* enregistrer(arbre *a) {
arbre*valeur;
FILE*fichier = NULL;
fichier=fopen("C:\tp_c\test","r+");
if(!estVide(a))
prefixe(a);
ecritureFichier(a);
}
qq un peu me dire comment adapter cela pour qu'il fonctionne
byakhlefncr
Messages postés
260
Date d'inscription
vendredi 1 juillet 2005
Statut
Membre
Dernière intervention
11 septembre 2008
63
15 mai 2008 à 01:35
15 mai 2008 à 01:35
Salut,
je nevois pas l'interrêt de faire une sauvegarde de cette façon? peut être peux
tu m'expliquer un plus.
Valeur-Gauche-Droite
comment vas tu récupérer l'arbre à partir du fichier pour qu'il retrouve son état initiale?
voici ma sugestion :
R0::Valeur
R1:R0:Valeur Gauche de R0
R2:R1:Valeur Gauche de R1
R3:R2:Valeur Gauche de R2
R4:R2:Valeur Droite de R2
R5:R4:Valeur Gauche de R4
R6:R1:Valeur Droite de R1
R7:R0:Valeur Droite de R0
R8:R7:Valeur Gauche de R7
R9:R8:Valeur Gauche de R8
R10:R8:Valeur Droite de R8
R11:R7:Valeur Droite de R7
Donc c'est sous forme : <Numero>:<Numero Parent>:<Valeur>
de cette façon on peut récupérer l'arbre dans son état initial
(avant l'enregistrement dans un fichier)
je nevois pas l'interrêt de faire une sauvegarde de cette façon? peut être peux
tu m'expliquer un plus.
Valeur-Gauche-Droite
comment vas tu récupérer l'arbre à partir du fichier pour qu'il retrouve son état initiale?
voici ma sugestion :
R0 | R1-------------------------------R7 | | R2-----------------------R6 R8----------------------R11 | | R3 ----------- R4 R9--------------R10 | R5-----
R0::Valeur
R1:R0:Valeur Gauche de R0
R2:R1:Valeur Gauche de R1
R3:R2:Valeur Gauche de R2
R4:R2:Valeur Droite de R2
R5:R4:Valeur Gauche de R4
R6:R1:Valeur Droite de R1
R7:R0:Valeur Droite de R0
R8:R7:Valeur Gauche de R7
R9:R8:Valeur Gauche de R8
R10:R8:Valeur Droite de R8
R11:R7:Valeur Droite de R7
Donc c'est sous forme : <Numero>:<Numero Parent>:<Valeur>
de cette façon on peut récupérer l'arbre dans son état initial
(avant l'enregistrement dans un fichier)
zargoss
Messages postés
78
Date d'inscription
mercredi 12 décembre 2007
Statut
Membre
Dernière intervention
14 juin 2008
3
15 mai 2008 à 02:11
15 mai 2008 à 02:11
ce que je veux c'est enregistrer les valeurs des noeuds dans fichier texte comme ca
12 -1 -1
4 7 3
5 -1 -1
.....
les -1 indique que le noeuds na pas de fils
et on a
valeur du noeud gauche droite
12 -1 -1
4 7 3
5 -1 -1
.....
les -1 indique que le noeuds na pas de fils
et on a
valeur du noeud gauche droite
byakhlefncr
Messages postés
260
Date d'inscription
vendredi 1 juillet 2005
Statut
Membre
Dernière intervention
11 septembre 2008
63
15 mai 2008 à 02:19
15 mai 2008 à 02:19
si 12 n'a pas de fils alors
4 7 3
5 -1 -1
que représentent-ils?
peux tu faire un schéma des valeurs de ton exemple pour représenter l'arbre parce que je n'ai pas bien suivi?
4 7 3
5 -1 -1
que représentent-ils?
peux tu faire un schéma des valeurs de ton exemple pour représenter l'arbre parce que je n'ai pas bien suivi?
zargoss
Messages postés
78
Date d'inscription
mercredi 12 décembre 2007
Statut
Membre
Dernière intervention
14 juin 2008
3
15 mai 2008 à 02:35
15 mai 2008 à 02:35
DSL pour le 12 je n'ai voulu ecrire q'un exemple
voila ce que je veu dire
12 10 18
10 5 11
18 17 20
5 -1 -1
11 -1 -1
17 -1 -1
20 -1 -1
voila ce que je veux dire
voila ce que je veu dire
12 10 18
10 5 11
18 17 20
5 -1 -1
11 -1 -1
17 -1 -1
20 -1 -1
voila ce que je veux dire
zargoss
Messages postés
78
Date d'inscription
mercredi 12 décembre 2007
Statut
Membre
Dernière intervention
14 juin 2008
3
>
zargoss
Messages postés
78
Date d'inscription
mercredi 12 décembre 2007
Statut
Membre
Dernière intervention
14 juin 2008
15 mai 2008 à 02:40
15 mai 2008 à 02:40
voila le shema de cet arbre binaire de recherche
12
I
I-----------I
10 18
I I
I---------------I I
5 11 I
I
I-------------I
17 20
VOILA j'esspere que c'est cmprehensible
12
I
I-----------I
10 18
I I
I---------------I I
5 11 I
I
I-------------I
17 20
VOILA j'esspere que c'est cmprehensible
zargoss
Messages postés
78
Date d'inscription
mercredi 12 décembre 2007
Statut
Membre
Dernière intervention
14 juin 2008
3
>
zargoss
Messages postés
78
Date d'inscription
mercredi 12 décembre 2007
Statut
Membre
Dernière intervention
14 juin 2008
15 mai 2008 à 02:44
15 mai 2008 à 02:44
lol il est par ecri correctement bon voila ceci je pense est sufisant
12 10 18
10 5 11
18 17 20
5 -1 -1
11 -1 -1
17 -1 -1
20 -1 -1
12 10 18
10 5 11
18 17 20
5 -1 -1
11 -1 -1
17 -1 -1
20 -1 -1
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
byakhlefncr
Messages postés
260
Date d'inscription
vendredi 1 juillet 2005
Statut
Membre
Dernière intervention
11 septembre 2008
63
15 mai 2008 à 03:14
15 mai 2008 à 03:14
il faut utiliser la récursivité comme pour parcourir l'arbre
Excuses-moi, je vais écrire un algorithme et non en C car ça fait des lustre que je n'utilise plus et je ne l'ai même pas sur ma machine.
Excuses-moi, je vais écrire un algorithme et non en C car ça fait des lustre que je n'utilise plus et je ne l'ai même pas sur ma machine.
Fonction EnregistreNoeud(A : pointeur, f : Fichier) Buffer = 'Valeur de A' si 'Gauche de A' != null alors Buffer=Buffer + ' ' + 'Valeur Gauche de A' sinon Buffer=Buffer + ' -1' Fin si si 'Droite De A' != null alors Buffer=Buffer + ' ' + 'Valeur Droite de A' sinon Buffer=Buffer + ' -1' Fin si EcrireDansFichier(f, Buffer) EnregistreNoeud('Gauche de A') EnregistrerNoeud('Droite de A') Fin Fonction Fonction EnregistrerArbre(RacineArbre : pointeur); OuvrirFichier(f, 'c:\Test.txt') EnregistreNoeud(RacineArbre) FermerFichier(f) Fin Fonction
15 mai 2008 à 00:46
15 mai 2008 à 00:53
15 mai 2008 à 01:03