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

  FORUM HardWare.fr
  Programmation
  C++

  Hachage et pointeurs

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Hachage et pointeurs

n°411824
greg95
Posté le 31-05-2003 à 10:45:16  profilanswer
 

 
Voici mon .h

Code :
  1. //Gestion des colisions de maniere chainee
  2. typedef struct ListeptrGpassager
  3. {
  4. ptr_GPassager Passager;
  5. struct ListeptrGpassager* suivant;
  6. }ListeptrGpassager;
  7. typedef ListeptrGpassager* ptr_ListeptrGpassager;
  8. typedef struct TableH
  9. {
  10. ListeptrGpassager* TableauPtr;
  11. int Nelement;
  12. }TableH;
  13. typedef TableH* ptr_TableH;

 
 
Pourquoi ceci ne passe passe t il pas?
 
for(i=0;i<=Nmax;i++)  
 {
  T->TableauPtr[i]=NULL;
 }
 
Comment accede t on alors a la case i ?
 
Merci d'avance

mood
Publicité
Posté le 31-05-2003 à 10:45:16  profilanswer
 

n°411831
Taz
bisounours-codeur
Posté le 31-05-2003 à 11:22:14  profilanswer
 

ben avec la fonction de hash

n°411834
greg95
Posté le 31-05-2003 à 11:27:41  profilanswer
 

ca m'eclaire pas comme reponse peux tu detailler?

n°411839
verdoux
And I'm still waiting
Posté le 31-05-2003 à 11:36:49  profilanswer
 

Comment t'as initialisé T->TableauPtr ?

n°411841
verdoux
And I'm still waiting
Posté le 31-05-2003 à 11:37:48  profilanswer
 

++Taz a écrit :

ben avec la fonction de hash


Y a quoi à hacher là ?

n°411847
touxe
Posté le 31-05-2003 à 11:49:00  profilanswer
 

C une putain de galere ce projet de merde !!!
On a quasiement pas eu de cours sur les table de hachage et les AVL et on nous file un projet enorme avec ces deux structures !!comment ils veulent qu'on s'en sorte ....
 
Je commence a craquer moi sur ce projet :)

n°411866
Tetragramm​aton IHVH
dieu unique =&gt; pensée unique
Posté le 31-05-2003 à 12:42:54  profilanswer
 

touxe a écrit :

C une putain de galere ce projet de merde !!!
On a quasiement pas eu de cours sur les table de hachage et les AVL et on nous file un projet enorme avec ces deux structures !!comment ils veulent qu'on s'en sorte ....
 


 
lire la doc, peut être ?  :sarcastic:


---------------
"Dieu a exploité tous nos complexes d'infériorité, en commençant par notre incapacité de croire à notre propre divinité." - Emil Michel Cioran
n°411870
touxe
Posté le 31-05-2003 à 12:49:48  profilanswer
 

g lu de la doc g reussi a implenter toutes mes structures mais g un probleme louche que personne n'arrve a resoudre (cf un autre message un peu plus loins  ds le forum)

n°411897
greg95
Posté le 31-05-2003 à 14:44:07  profilanswer
 

bah jai mis le code vous voyez bien comment les variables sont declarées , je me demande pkoi ca marche aps c tout
T->TableauPtr c bien un pointeur sur un tableau non auquel on accede (le contenu) comme ca TableauPtr[i] ou *(TableauPtr+i) non?


Message édité par greg95 le 31-05-2003 à 14:45:59
n°411983
xWillow
Posté le 31-05-2003 à 19:10:26  profilanswer
 

non pas du tout

mood
Publicité
Posté le 31-05-2003 à 19:10:26  profilanswer
 

n°411985
xWillow
Posté le 31-05-2003 à 19:12:29  profilanswer
 

repond a la question de verdoux, je crois que c'est la que se trouve la solution.

n°411994
greg95
Posté le 31-05-2003 à 20:17:25  profilanswer
 

c bon je crois que g resolu mon pb :
 

Code :
  1. * Hash CODING*/
  2. //Gestion des colisions de maniere chainee
  3. typedef struct ListeptrGpassager
  4. {
  5. ptr_GPassager Passager;
  6. struct ListeptrGpassager* suivant;
  7. }ListeptrGpassager;
  8. typedef ListeptrGpassager* ptr_ListeptrGpassager;
  9. typedef struct TableH
  10. {
  11. ListeptrGpassager** TableauPtr;
  12. int Nelement;
  13. }TableH;
  14. typedef TableH* ptr_TableH;
  15. #include "hashcoding.h"
  16. #include "avl.h"
  17. //Initialisation de la table de hachage
  18. ptr_TableH InitTable(ptr_TableH T,int Nmax)
  19. {
  20. int i;
  21. T=malloc(sizeof(TableH));
  22. T->Nelement=0;
  23. T->TableauPtr=(ptr_ListeptrGpassager*)malloc(sizeof(ListeptrGpassager*)*Nmax);//on alloue N cases
  24. for(i=0;i<=Nmax;i++)
  25. {
  26.  T->TableauPtr[i]=NULL;
  27. }
  28. return T;
  29. }
  30. //detruire la table de hashage
  31. void DetruireTable(ptr_TableH T)
  32. {
  33. free(T->TableauPtr);
  34. free(T);
  35. }
  36. //fonction de hachage  
  37. int h(char* Cle1,char* Cle2,char* Cle3,int TailleTable)
  38. {
  39. int somme=0,somme2=0,somme3=0;
  40. int i;
  41. for(i=0;i<strlen(Cle1);i++) somme+=Cle1[i];
  42. for(i=0;i<strlen(Cle2);i++) somme2+=Cle2[i];
  43. for(i=0;i<strlen(Cle3);i++) somme3+=Cle3[i];
  44. somme=somme+somme2+somme3;
  45. return somme % TailleTable;
  46. }
  47. //Insertion dans la table avec gestion des colisions de maniere chainee
  48. int InsererTable(ptr_TableH T,ptr_GPassager Gp,int TailleTable)
  49. {
  50. int Cle=h(Gp->NomPassager,Gp->PrenomPassager,Gp->NumeroTelPassager,TailleTable);
  51. printf("CLE:\n",Cle);
  52. if(T->TableauPtr[Cle]==NULL) T->Nelement++;
  53. T->TableauPtr[Cle]=InsererListeptrGpassager(T->TableauPtr[Cle],Gp);
  54. return 0;
  55. }
  56. //Gestion des colisions
  57. ptr_ListeptrGpassager InsererListeptrGpassager(ptr_ListeptrGpassager L,ptr_GPassager Gp)
  58. {
  59. ptr_ListeptrGpassager courant;
  60. courant=malloc(sizeof(ListeptrGpassager));
  61. courant->Passager=Gp;
  62. if(L==NULL)
  63. {
  64.  L=courant;
  65.  courant->suivant=NULL;
  66.  return L;
  67. }
  68. else
  69. {
  70.  courant->suivant=L;
  71.  L=courant;
  72.  return L;
  73. }
  74. }


Message édité par greg95 le 31-05-2003 à 20:18:20

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

  Hachage et pointeurs

 

Sujets relatifs
Borland et TObject... (et un peu de pointeurs aussi...)Question sur les pointeurs...
[C] pointeurs de pointeurs en retour de fonction...[C] tableaux de pointeurs [Resolu]
MFC : les pointeurs sur Doc c'est de la m....?Pointeurs de fontions...
[c++]pointeurs[C]Un ptit coup de main sur pointeurs et fonction svp
J'ai bcp de mal avec les pointeurs, un peu d'aide svp ...[C++] pointeurs "intelligents" (désolé, c'est leur nom)
Plus de sujets relatifs à : Hachage et pointeurs


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