begin process at 2012 05 28 13:31:09
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Algorithme

 > 

Maths

 > 

arbre lexicographique


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

arbre lexicographique

jeudi 22 mai 2008 à 19:36:56 | arbre lexicographique

finoss

Bonjour,

Je dois réalisé pour un projet un arbre lexicographique en C, j'ai réussi à faire le code pour importer les 16000 mots depuis un fichier texte, en revanche je dois désormais afficher tous les mots qui peuvent être formé par l'arbre
ex si j'affiche abricot, je peux aussi faire abricotier, mais je vous avoue que je ne vois pas du tout comment faire pour cet affichage.

j'espère que vous pourrez m'aiguiller

merci à vous

ps: voici le code actuel

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define CHEMIN "/usr/local/tmp/IMA3/dico.english"

// définition structure arbre
typedef struct noeud
   {
   char valeur;
   char terminal;
   struct noeud *fils, *frere;
   } Noeud;

typedef Noeud *ptNoeud,*Arbre;

void AjoutLettre(Arbre *D, char mot[], int icr)
   {
   if (icr < strlen(mot))
      {
      if (*D == NULL) // D est vide
         {
         ptNoeud N;
         N = (ptNoeud)malloc(sizeof(Noeud));
         N->fils = NULL;
         N->frere = NULL;
         N->valeur = mot[icr];
         // vérification lettre terminale
         N->terminal = (mot[icr+1] == '\0');
         *D = N;
         AjoutLettre(&((*D)->fils),mot,icr+1);
         }
      else if (mot[icr] == (*D)->valeur)
         {
         AjoutLettre(&((*D)->fils),mot,icr+1);
         }
      else
         {
         AjoutLettre(&((*D)->frere),mot,icr);
         }
      }
   }

main(int argc, char *argv[])
   {
   Arbre dico=NULL;
   char mot[50];
   FILE *file = fopen(CHEMIN,"r");
   if (file == NULL)
      {
      printf("erreur");
      }
   else
      {
      stdin = file;
      }   

   

   fscanf(stdin,"%s",mot);
   while (!feof(stdin))
      {
      AjoutLettre(&dico,mot,0);
      fscanf(stdin,"%s",mot);
      }
   
   affichage(dico);

   fclose(file);
   }



Cette discussion est classée dans : arbre, mot, char, noeud, icr


Répondre à ce message

Sujets en rapport avec ce message

supprimer un mot d'un arbre en C [ par toto000 ] Bonjour, J'ai un arbre ternaire de recherche et je voudrai supprimer un mot dans cet arbre.Voilà ce que j'ai fais mais ça ne marche pas pour tous les erreur en execution [ par marooh ] bonjour, j'ai ecrit un code qui à partir d'un fichier charge les données dans un arbre binaire de recherche. ça compile et tout mais en executant ça s Sérialiser un arbre et sauver dans un fichier [ par youscoul ] Bonjour, Je suis debutant à ce que je vais vous demander. Ne soyez pas étonner si vous me trouvez pas trop clair. En effet, je dispose d'un arbre N a Création d'un arbre n aire en C qui contient au début un élement spécial [ par meriem123435 ] Bonjour ! Je veux créer un arbre n aire en c, qui contient comme tête un élément spécial genre '#'. J'ai déclaré ma structure comme suit : typedef st Pointeurs et tableau de char ? [ par phyyl ] Bonjour ! J'ai un petit soucis ... voici mon code: [code=cpp] #include using namespace std; void modify(char* ptr[]); int main() { char mot[]= Problème d allocation dynamique [ par Beqtb0x ] /*Bonjour a tous, je viens d'arriver sur ce site, je suis étudiant en première année d'informatique et j'ai un problème a un tp que même la prof n'est problème avec une fonction mélanger mot [ par lewan ] bonjour, voilà j'ai écris une fonction me permettant de mélanger un mot!! Dans un premier temps je crée un dictionnaire de mot aléatoire et dans un s créer arbre.. [ par abdelkaderg54 ] Salut à tous , ben voilà j'été entrain de faire un petit programme en c++ Il s'agit de deffirentes fonctions pour manipuler un arbre binnair de recher Les arbres en C [ par nadias ] Bonsoir tout le monde,Je voudrai SVP etre corriger s'il y a erreur merci.On me demande de creer un arbre. Voici la consigne:"Cette arbre possède des n Blocage Arbre binaire - Lexique [ par cedricg92 ] Bonjour, Je dois faire un programme qui doit être capable de trier un texte dans lexique tel un dictionnaire en comptant les occurrences. Donc pour c


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,187 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales