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

Mathématiques Discussion :

Aide pour algorithme de tri


Sujet :

Mathématiques

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 25
    Points : 19
    Points
    19
    Par défaut Aide pour algorithme de tri
    Bonjour,

    Je cherche à trier des objets de cette nature :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
                      IDENTIFIANT      NOM      ID_PERE
    Object1 :            1           Chips        2
    Object2 :            2           Paquet       3
    Object3 :            3           Armoire       
    Object4 :            4           Sel          3
    Object5 :            5           Evier
    Object6 :            6           Vaisselle    5
    Ces objets sont dans un tableau sur lequel j'itère ligne après ligne.

    J'aimerais pouvoir réorganiser ce tableau afin qu'il devienne ainsi :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
                      IDENTIFIANT      NOM      ID_PERE
    Object3 :            3           Armoire       
    Object2 :            2           Paquet       3
    Object1 :            1           Chips        2
    Object4 :            4           Sel          3
    Object5 :            5           Evier
    Object6 :            6           Vaisselle    5
    Le classement des différents noeuds de même niveau étant fait par ordre alphabétique.

    On m'a parlé d'arbres orientés verticalement, je ne comprends pas trop avec ce qu'il y a sur Internet comment utiliser cela.
    > Dans l'hypothèse ou ce genre de traitement serait classique, connaitriez-vous une URL, un algorithme courant pour trier mon tableau ?

    Merci par avance !

    PS : désolé je suis débutant en terme d'algorithmique

    K.

  2. #2
    Expert éminent Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Points : 7 903
    Points
    7 903
    Par défaut
    J'aimerais pouvoir réorganiser ce tableau afin qu'il devienne ainsi :
    Je n'ai pas saisi la logique de cette réorganisation.
    Trier suppose une fonction de comparaison, quelle est-elle ?

  3. #3
    Rédacteur
    Avatar de pseudocode
    Homme Profil pro
    Architecte système
    Inscrit en
    Décembre 2006
    Messages
    10 062
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Architecte système
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2006
    Messages : 10 062
    Points : 16 084
    Points
    16 084
    Par défaut
    Citation Envoyé par Graffito Voir le message
    Je n'ai pas saisi la logique de cette réorganisation.
    Trier suppose une fonction de comparaison, quelle est-elle ?
    Je suppose qu'il veut qu'un objet "parent" soit listé avant ses "enfants"

  4. #4
    Expert éminent Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Points : 7 903
    Points
    7 903
    Par défaut
    Je suppose qu'il veut qu'un objet "parent" soit listé avant ses "enfants"
    Mais, c'est bien sur : la vaisselle dans l'évier !

    Si ID_PERE est vide , la clé de tri vaut [NOM , ""].
    Sinon, la clé de tri vaut [NOM correspondant à ID_PERE , NOM].

    Reste à calculer pour chaque ligne une clé, puis trier les lignes suivant les clés.

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    25
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 25
    Points : 19
    Points
    19
    Par défaut
    Merci pour vos réponses !!

    Si je comprends bien, dans mon exemple cela va donner :

    Object1 : [Paquet, Chips]
    Object2 : [Armoire, Paquet]
    Object3 : [Armoire, ]
    Object4 : [Armoire, Sel]
    Object5 : [Evier, ]
    Object6 : [Evier, Vaisselle]

    Puis je classe alphabétiquement selon Clé1 puis Clé2 :
    Object3 : [Armoire, ]
    Object2 : [Armoire, Paquet]
    Object4 : [Armoire, Sel]
    Object5 : [Evier, ]
    Object6 : [Evier, Vaisselle]
    Object1 : [Paquet, Chips]

    Peut-être que je me trompe, mais en faisant comme conseillé, l'objet "Chips" n'est pas sous l'objet "Paquet"....

    > Est-ce ma manière de comparer ?

    Merci pour votre aide !!

    K.

  6. #6
    Expert éminent Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Points : 7 903
    Points
    7 903
    Par défaut
    On peut juste généraliser la clé comme un n-uple :
    [Nom de l'ancêtre sans ID_PERE, ..., NOM du grand-père, NOM du père correspondant à ID_PERE, NOM]

    Mais, la solution la plus appropriée serait de construire un arbre en traitant chaque élément du tableau initial et en le raccodrant à son père et en l'insérant à saplace (ordre alphabétique dans la liste de ses frères).
    Ensuite, parcours d'arbre depuis la racine virtuelle à la quelle on aura rattaché tous les éléments sans pères.

Discussions similaires

  1. Aide pour algorithme sur jeu de dés
    Par fab56 dans le forum Intelligence artificielle
    Réponses: 3
    Dernier message: 29/02/2008, 09h56
  2. Demande d'aide pour algorithme balistique
    Par aderdu91 dans le forum Algorithmes et structures de données
    Réponses: 3
    Dernier message: 12/04/2007, 13h59
  3. Aide pour algorithme
    Par Sinclaire dans le forum Langage
    Réponses: 5
    Dernier message: 29/03/2006, 19h58
  4. Aide pour requête de Tri assez spécial (Oracle)
    Par Chips dans le forum Langage SQL
    Réponses: 2
    Dernier message: 29/04/2005, 10h56
  5. Besoin d'aide pour algorithme de traitement d'images
    Par Zenman94 dans le forum Algorithmes et structures de données
    Réponses: 13
    Dernier message: 07/04/2005, 14h31

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