Trier une liste (sort)

Signaler
Messages postés
22
Date d'inscription
mercredi 10 mars 2004
Statut
Membre
Dernière intervention
9 juillet 2004
-
Messages postés
6535
Date d'inscription
lundi 16 décembre 2002
Statut
Modérateur
Dernière intervention
22 août 2010
-
Bonjour,
je cherche a trier une liste d'entiers, mais le pobleme est que par exemple isort trie de cette facon: 87,88,89,9,90,91,92....
Je ne sais pas si c'est assez clair,
voila merci bcp

Des chercheurs qui cherchent on en trouve
Des chercheurs qui trouvent on en cherche

1 réponse

Messages postés
6535
Date d'inscription
lundi 16 décembre 2002
Statut
Modérateur
Dernière intervention
22 août 2010
10
/* trishell: trive v[0]...v[n - 1] dans l'ordre croissant */
void trishell(int v[], n)
{
  int ecart, i, j, temp;

  for(ecart = n / 2; ecart > 0; ecart /= 2)
    for(i = ecart; i < n; i++)
      for(j = i - ecart; j >= 0 && v[j] > v[j + ecart]; j -= ecart)
      {
        temp = v[j];
        v[j] = v[j + ecart];
        v[j + ecart] = temp;
      }
}