IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Algorithmes et structures de données Discussion :

algo d'arbre binaire


Sujet :

Algorithmes et structures de données

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 2
    Points : 1
    Points
    1
    Par défaut algo d'arbre binaire
    salut a tous!!,je cherche un algo pour l'acquisition d'une fonction booléenne et sa transformation en un arbre binaire(variables sur les feuilles et operateurs sur les noeuds)
    merci d'avance

  2. #2
    Rédacteur

    Avatar de millie
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    7 015
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 7 015
    Points : 9 818
    Points
    9 818
    Par défaut
    l'acquisition d'une fonction booléenne
    Tu parles de fonction booléenne ou tu veux parler d'une expression logique ?
    Je ne répondrai à aucune question technique en privé

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 5
    Points : 6
    Points
    6
    Par défaut
    bonjour,
    c'est une fonction booléenne avec des opérateurs "+" "." et "/" pour les compléments. par exemple une fonction f(a,b,c)=/(a.(b+c))

  4. #4
    Rédacteur

    Avatar de millie
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    7 015
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 7 015
    Points : 9 818
    Points
    9 818
    Par défaut
    ok, dans ce cas c'est une expression logique, et pas purement une fonction booléenne, ce qui rend la chose plus facile.

    Souhaites tu construire l'arbre pour l'évaluer ensuite ? Il y a des méthodes performantes dans des cours de Compilation utilisant des piles pour réaliser cela.
    Je ne répondrai à aucune question technique en privé

  5. #5
    Membre éclairé
    Inscrit en
    Janvier 2005
    Messages
    711
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 711
    Points : 751
    Points
    751
    Par défaut
    suffit d'une fonction recursive... la difficulté est de parser correctement la formule !

    en gros, ca donne un truc du genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
     
    arbre A
     
    Construct(chaine C) retourne un arbre
      si C est de la forme /(uneChaine)
        ajouter a A un noeud avec operateur / et une branche vers Construct(uneChaine)
     
       si C est de la forme (uneChaine + uneAutreChaine)
         ajouter a A un noeud avec operateur + et 2 branche vers Construct(uneChaine) et Construct(uneAutreChaine)
     
    //pareil pour l'operateur .
     
      si C est une variable, la renvoyer

  6. #6
    Futur Membre du Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 5
    Points : 6
    Points
    6
    Par défaut
    oui exactement. parce que ensuite il va servir à un autre sous programme qui lui va le simplifier on va dire, en une somme de produit qui va etre retranscrite encore une fois en un arbre. et cette somme de produit sera utiliser et donc doit etre facilement manipulable, par un autre programme.

  7. #7
    Futur Membre du Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 5
    Points : 6
    Points
    6
    Par défaut
    donc voilà seulement, de l'ADA j'en ai fait peu, et avec un prof passe moi l'expression mais un prf de me***, donc je sèche pas mal sur l'algo et le programme d'ou le coup de main que je demande.

  8. #8
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    j'attend tjrs une reponse + satisfaisante

  9. #9
    Membre éprouvé Avatar de Nemerle
    Inscrit en
    Octobre 2003
    Messages
    1 106
    Détails du profil
    Informations personnelles :
    Âge : 53

    Informations forums :
    Inscription : Octobre 2003
    Messages : 1 106
    Points : 1 213
    Points
    1 213
    Par défaut
    Citation Envoyé par sad-evil
    j'attend tjrs une reponse + satisfaisante
    bein tu vas attendre longtemps avec ce genre de réaction
    Nemerle, mathématicopilier de bars, membre du triumvirat du CSTM, 3/4 centre

  10. #10
    Membre éclairé
    Inscrit en
    Janvier 2005
    Messages
    711
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 711
    Points : 751
    Points
    751
    Par défaut
    Citation Envoyé par Nemerle
    bein tu vas attendre longtemps avec ce genre de réaction

    tu m'etonnes

    je t'ai donné un algo, bancal peut etre, improvisé surement, mais je ne suis pas la pour faire ton boulot a ta place...

  11. #11
    Futur Membre du Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 5
    Points : 6
    Points
    6
    Par défaut
    bonsoir, voilà, vous m'avez bien conseillé pour mon problème, mais je tourne toujours en rond, je tatonne sans avancer dans mon projet pourriez-vous s'il vous plaît m'indiquer des sites internet ou il y aurait un cours sur la construction et surtout transformation de fonction logique en arbre binaire. merci d'avance

  12. #12
    Membre éclairé
    Inscrit en
    Janvier 2005
    Messages
    711
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 711
    Points : 751
    Points
    751
    Par défaut
    je t'ai donné l'algorithme dans mon premier post, qu'est ce qui ne te va pas ?

  13. #13
    Futur Membre du Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 5
    Points : 6
    Points
    6
    Par défaut
    oui tu m'a donné un algorithme, le problème c'est que je suis pas trés doué en ada, mais bon je suis encore que à l'algorithme dieu merci... ce qui ne me va pas c que je sais pas par ou commencé avec mon projet jessaye des méthode qui ne me mène à rien ,j'ai un prof trop nul qui se fou de nous parce que on compren pas, donc il ne nous aide pas.
    voilà donc pour ton algo, au début j'ai (une chaine) d'accord, avec des carctères, des opérateurs etc... déjà, ais-je besoins d'analyser la fonction que je rentre avant d'en fair un arbre ou est-ce possible d'attaquer la construction directement?

Discussions similaires

  1. Afficher un arbre binaire avec sa structure
    Par PhoneKilleR dans le forum C
    Réponses: 7
    Dernier message: 23/04/2008, 23h24
  2. Arbre binaire
    Par Heaven dans le forum Algorithmes et structures de données
    Réponses: 6
    Dernier message: 02/02/2004, 19h01
  3. Algo lecture arbre ou requête
    Par fplanglois dans le forum SQL
    Réponses: 5
    Dernier message: 14/10/2003, 14h56

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo