Tri des éléments d'un tableau

Fermé
simon - 3 mai 2008 à 19:58
 simon - 3 mai 2008 à 20:49
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.

3 réponses

artragis Messages postés 481 Date d'inscription mardi 12 juin 2007 Statut Membre Dernière intervention 6 avril 2010 146
3 mai 2008 à 20:13
*/ 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
luffy.luck Messages postés 31 Date d'inscription vendredi 21 mars 2008 Statut Membre Dernière intervention 18 décembre 2008 3
3 mai 2008 à 20:29
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
merci je code en c j'essairai de traduire l'algo
0
luffy.luck Messages postés 31 Date d'inscription vendredi 21 mars 2008 Statut Membre Dernière intervention 18 décembre 2008 3
3 mai 2008 à 20:31
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