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

Python Discussion :

Débutant en python à la recherche d'aide :)


Sujet :

Python

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2015
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2015
    Messages : 2
    Par défaut Débutant en python à la recherche d'aide :)
    Bonjours, je suis débutant en python et je voudrais savoir comment s'y prendre pour crée le constructeur d'un arbre des suffixe par la methode décrite dans le td.
    J'y ai passer plus de 3 jours sans pouvoir arriver à quoi que ce soit

    Nom : TD10-page-001.jpg
Affichages : 233
Taille : 909,2 Ko
    Nom : TD10-page-002.jpg
Affichages : 251
Taille : 768,2 Ko

    Merci pour votre aide !

  2. #2
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2015
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2015
    Messages : 2
    Par défaut
    J'ai aussi accès à la correction de ce tp mais en le lisant c'est encore plus flou que lorsque je ne l'avais pas déjà lue..

    la voici :

    1) Nous allons adopter une solution qui se sert d'un tableau pour garder les
    arêtes étiquetés vers les fils. Au lieu d'exprimer les étiquettes explicitement,
    nous utiliserons la position d'une arête (= référence à un fils) dans le tableau
    des arêtes comme son étiquette implicite.
    On pourra utiliser le code ASCII d'un caractère comme indice du tableau des fils,
    ce qui est facile mais susceptible de gâcher beaucoup de mémoire, surtout si
    l'alphabet effectivement utilisé dans le texte est réduit par rapport aux 256
    caractères de la table ASCII étendue. Un autre problème est que si notre texte
    utilise des caractères Unicode, dont le code peut consister en un entier de 16 bits
    ou plus, on aurait besoin de tableaux trop grands. Une solution à ces deux problèmes
    consiste en créer au préalable un seul grand tableau contenant, aux positions qui
    correspondent aux caractères effectivement utilisés dans le texte, des nombres
    entiers progressifs, de 1 à N, une sorte de codage alternatif, qui seront utilisés
    comme indices pour accéder aux tableaux des fils.
    Voici les attributs de la classe ArbreSuff:
    - profondeur, de type entier : cela nous permet de stocker la profondeur d'un noeud,
    et donc d'éviter de la recalculer à chaque fois qu'on en a besoin ;
    - position, de type entier : position de début dans le texte du suffixe qui correspond
    au chemin de la racine à ce noeud ; on affectera la valeur 0 à la racine (chaine vide) ;
    - parent, une référence au noeud parent, de type ArbreSuff ;
    - fils[N], un tableau de références au sous-arbres, de type ArbreSuff

    Nous allons prévoir aussi un constructeur simple, qui prend comme argument
    une référence à un ArbreSuff parent, qui nous permettra de créer des nouveaux noeuds vides.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    ArbreSuff(ArbreSuff p)
      parent <- p
      si parent != NULL
        profondeur <- parent.profondeur + 1
      sinon
        profondeur <- 0
      position <- 0
      pour i de 1 à  N
        fils[i] <- NULL
    2) Construction de l'arbre des suffixes

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    ArbreSuff(Texte t)
      self(NULL)                     # appel au constructeur simple, pour créer la racine
      ouvCour <- nouvelle Liste()   # liste des noeuds ouverts pour l'itération courante
      ouvCour.ajouter(self)         # au début, ouvCour ne contient que la racine
      pour i de 1 Ã  t.taille()
        c <- alphabet[t[i]]          # conversion ASCII -> code interne
        ouvSuiv <- nouvelle Liste()  # liste des noeuds ouverts pour l'itération suivante
        ouvSuiv.ajouter(self)        # la racine fait toujours partie des noeuds ouverts
        Itérateur ouverts <- ouvCour.itérateur()   # On utilise un itérateur pour parcourir la liste ouvCour
        tant que ouverts.hasNext()
          noeud <- ouverts.next()
          si noeud.fils[c] = NIL
            noeud.fils[c] <- nouveau ArbreSuff(noeud)
            noeud.fils[c].position <- i - noeud.profondeur
          ouvSuiv.ajouter(noeud.fils[c])
        ouvCour <- ouvSuiv           # on remplace par ouvSuiv la liste qui vient d'être parcourue
      # fin du constructeur, maintenant "self" est la racine de l'arbre des suffixes de t
    3) recherche d'un motif

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    entier rechercher(texte m)
      n <- self
      pour i de 1 à m.taille()
        c <- alphabet[m[i]]
        n <- fils[c]
        si n = NIL         # motif non trouvé
          renovoyer -1
      renvoyer n.position
      # remarque : si m.taille() = 0 (chaîne vide), la position renvoyée sera 0.

Discussions similaires

  1. [AC-2013] Recherche d'aide (Débutant en Access)
    Par tontador dans le forum Modélisation
    Réponses: 3
    Dernier message: 26/05/2014, 15h05
  2. Réponses: 2
    Dernier message: 18/09/2006, 17h10
  3. Débutant en C++ a besoin d'aide por son code
    Par Paulinho dans le forum C++
    Réponses: 9
    Dernier message: 08/10/2005, 08h53
  4. [Débutant(e)][Stratégie] Affichage d'une aide
    Par clairette dans le forum AWT/Swing
    Réponses: 8
    Dernier message: 07/07/2005, 16h05

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