Tri des éléments d'un tableau

simon -  
 simon -
Bonjour,
je suis etudiant en premiere année reseau et télécom.j'ai 2 problemes avec les tris dans des tableaux.

*/ je voudrais tout simplement avoir un maximum d'algorithmes pour les tris dans les les tableaux , notement le tri rapide (quick sort), le tri par insertion ,j'ai déjà celui du tri à bulles . on m'a dit que ce dernier est trop lent et plus lourd pour la machine.

*/ j'aimerais pouvoir lorsque je trouve des éléments qui se repetent dans un tableau, supprimer la cellule de la 2eme occurence.
Configuration: Windows XP
Internet Explorer 6.0

3 réponses

  1. artragis Messages postés 510 Statut Membre 146
     
    */ j'aimerais pouvoir lorsque je trouve des éléments qui se repetent dans un tableau, supprimer la cellule de la 2eme occurence.
    je sais pas si c'est ce qu'il y a de mieux mais bon

    variables :
    tableau1(n)
    rangement(n)
    n
    i
    k
    fonction remplir le tableau
    lire n
    pour i=0 à n-1 par pas de 1
    lire tableau1[i]
    fin pour
    fin fonction
    fonction supocurence
     tableau1[0]==>rangement[0]
    
    k=0
    pour i=1 à n-1 par pas de 1
    si tableau1[i]=rangement[k] alors
    tableau1[i]=null
    sinon
    k<==k+1
    tableau1[i]<==tableau1[i]
    rangement[k]<==tableau1[i]
    fin si
    fin pour
    copier rangement() dans tableau1()
    
    
    1
  2. luffy.luck Messages postés 31 Date d'inscription   Statut Membre 3
     
    Yop,
    je vais te donner les algos parce que je pense que c'est de ca dont tu a besoin (surtout que je sais pas en quoi tu code , en C je pense ou en JAVA)(et je suppose que c'est pour un tableau a une dimension avec MAX termes) je te garantie pas la justesse parce ca fait longtemps que j'ai pas fais ca (mais test et tu vera):

    tri par selection (assez compliqué):
    tu introduit des variables z plus_grand et i
    tu cherche le plus grand element et tu le permute avec le dernier element

    pour ( z de MAX -1 à 1 | de -1 en -1 )
    plus_grand <-- T[O]
    p <-- 0
    pour ( i de 1 a z )
    si ( T[i] > plus_grand)
    alors
    plus_grand <--T[i]
    sinon rien
    fin si
    fin pour
    T[p] <-- T[z]
    T[z] <-- plus_grand
    fin pour

    Tri par insertion :

    tu as ton tableau d'origine T et R celui du resultat, taille = MAX

    R[0]<-- T[0]
    pour j de 1 a MAX -1 | pas de +1
    i<-- j-1
    tant que (i>=0 et R[ i ] >T[ j ])
    R[ i +1 ] <-- R[ i ]
    i <-- i -1
    fin tant que
    R[i + 1 ] <-- T [ j ]
    fin pour

    C'est vrai que le tri a bulle est pas super optimisant pour un soft mais il est facil. Tu peux le trouver sur le net ou tout seul facilement.

    luffy.luck
    0
    1. simon
       
      merci je code en c j'essairai de traduire l'algo
      0
  3. luffy.luck Messages postés 31 Date d'inscription   Statut Membre 3
     
    sorry ya pas les indentations ...
    Si tu as besoin vas sur mon wiki et trouves mon adr email, je sais pas si elle est visible ici.

    http://luffy.luck.free.fr/dokuwiki-rc2008-04-11/doku.php
    0