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 :

Problème de compréhension d'un exercice sur les pointeurs


Sujet :

Algorithmes et structures de données

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    146
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 146
    Points : 69
    Points
    69
    Par défaut Problème de compréhension d'un exercice sur les pointeurs
    Bonjour j'ai un souci de compréhension d'un exercice sur les pointeurs

    voici l'énoncé:
    soit une liste chaine qui contient des cellues avec 2 champs
    1er champ info
    2ème un pointeur qui a comme nom"suivant"

    il faut écire un algo qui donne l'adresse de la première occurences d'une valeur "val si elle existe dans cette liste.

    j'ai dessiner la liste chaine il y en a que deux mais je pense que la réalité il y en a "n", le cadres rouge c'est ma structure (une class instanciée) dans cette structure 2 cellules , je pense que c'est un attribut une variable nommé "info" et un autre c'est une variable qui est en faite un pointeur , qui contient l'adresse de la chaîne suivante.
    faut t'il juste chercher si dans la première structure (le debut de chaine) contient val dans l'attribut info?



    mon dessin correpond-t-'il a l ' énnoncée ?

    je vous remercie d'avance pour vos réponses
    Images attachées Images attachées  

  2. #2
    Membre émérite
    Avatar de Franck Dernoncourt
    Homme Profil pro
    PhD student in AI @ MIT
    Inscrit en
    Avril 2010
    Messages
    894
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : PhD student in AI @ MIT
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2010
    Messages : 894
    Points : 2 464
    Points
    2 464
    Par défaut
    Quelque chose du genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    find(val, head) // head pointe sur le premier élément de la liste
    count = 0
    head = next_pt 
    WHILE next_pt != NULL
      IF next_pt->info == val
        return count
      count++
      next_pt = next_pt->pt_suivant
    RETURN -1

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    146
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 146
    Points : 69
    Points
    69
    Par défaut
    merci de ta réponse

    est ce que ton ton script tu rest sur une seul structure ?

    est ce que mon schema des cellules et des structures sont bien représenter avec la liaison des ponteur, il faut que je comprenne l'énoncé avant de produire le pseudo code.

  4. #4
    Membre émérite
    Avatar de Franck Dernoncourt
    Homme Profil pro
    PhD student in AI @ MIT
    Inscrit en
    Avril 2010
    Messages
    894
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : PhD student in AI @ MIT
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2010
    Messages : 894
    Points : 2 464
    Points
    2 464
    Par défaut
    Dans le pseudocode que j'ai mis précédemment, je parcours les éléments de la liste un à un jusqu'à trouver val (et si on ne le trouve pas on retourne -1).

    Pour comprendre l'algorithme, je te conseille de chercher comment marche une liste chaînée sur Google (eg http://en.wikipedia.org/wiki/Linked_list), c'est une structure de données classique.

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    146
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 146
    Points : 69
    Points
    69
    Par défaut
    lorsque du dit cela
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    je parcours les éléments de la liste un à un jusqu'à trouver val
    supposont que j'ai une classe qui s'appelle couleur , on l'instancie 3 fois, on recherche un attribut de couleur gris

    la tête de chaine est la premier class couleur instancié elle possède plein de couleur mais pas la couleur qui nous interresse

    le deuxième instanciation pareil plein de couleur avec le gris

    et la troisième il y a aussi le gris.

    dans mon cas j'avais compris que la première occurence c'est de lire que ce qu'il y a dans la chaine tête de liste donc le résultat sera -1 , puisque dans la première occurence , la première class instancier n'a pas la couleur gris.

    pour avoir un résultat positif c'est de dire qu'on a droit a 2 occurences, donc on scanne la première instanciation puis la deuxième et on tombe sur le gris.

    en fait je demande si la première occurence veut dire de chercher que sur la première class instancié?

    si on prend dans le cour du lien que tu m'a fillé, on ne cherche que dans le groupe de cellule ou il y a que le nombre "12" qui serait la première occurence, 99 serait la deuxième occurence etc ...

    merci beaucoup pour le lien, j'ai mes cours java, mais je n'ai pas compris l'énnoncé, je pense avoir compris les listes chainés

  6. #6
    Membre émérite
    Avatar de Franck Dernoncourt
    Homme Profil pro
    PhD student in AI @ MIT
    Inscrit en
    Avril 2010
    Messages
    894
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : PhD student in AI @ MIT
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2010
    Messages : 894
    Points : 2 464
    Points
    2 464
    Par défaut
    Citation Envoyé par neufrdb
    en fait je demande si la première occurence veut dire de chercher que sur la première class instancié?
    Non, on cherche dans la liste jusqu'à trouver la bonne instance (ou pas, auquel cas l'algo retourne -1).

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    146
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 146
    Points : 69
    Points
    69
    Par défaut
    d'accord donc on recherche sur toutes la listes chainer quelque soit le nombre d'instance et si on en trouve un on s'arrête et on affiche qu'on a trouvé, si la réponse est - 1 alors il est arrivé au bout null .

  8. #8
    Membre émérite
    Avatar de Franck Dernoncourt
    Homme Profil pro
    PhD student in AI @ MIT
    Inscrit en
    Avril 2010
    Messages
    894
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : PhD student in AI @ MIT
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2010
    Messages : 894
    Points : 2 464
    Points
    2 464
    Par défaut
    oui c'est cela (plus exactement en renversant la causalité -> si il est arrivé au bout null alors la réponse est - 1)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Turbo Pascal] Exercice sur les pointeurs : employés d'une société
    Par raton laveur dans le forum Turbo Pascal
    Réponses: 1
    Dernier message: 20/06/2015, 06h09
  2. problème affichage de none--exercice sur les classes--swinnen
    Par kalice dans le forum Général Python
    Réponses: 2
    Dernier message: 09/03/2013, 15h07
  3. Réponses: 1
    Dernier message: 24/10/2011, 10h49
  4. besoin d aide sur un exercice sur les pointeurs
    Par azumachakib69 dans le forum C
    Réponses: 3
    Dernier message: 28/12/2006, 01h16

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