C/C++: Exemple d’utilisation d’algorithme de ‘tri à bulles’ sur une chaîne de caractères

Author:


Download


#include 
#include 
#include 
/*

Le tri à bulles ou tri par propagation est un algorithme de tri
qui consiste à faire remonter progressivement les plus grands éléments d'un tableau,
comme les bulles d'air remontent à la surface d'un liquide
  */
//Trier une chaîne de caractère
void tri_bulle(char *element, int nombre)
{
  register int i, j;
  register char t;

  for(i = 1; i < nombre; ++i)
    for( j = nombre-1; j >= i; --j) {
		/* comparaisons des éléments adjacents */
      if(element[j - 1] > element[ j ]) {
        /* Echanger les éléments du tableau */
        t = element[j - 1];
        element[j - 1] = element[ j ];
        element[ j ] = t;
      }
    }
}

int main(void)
{
  char str[255];

  printf("Tapez une chaîne de caractère:");
  gets(str);
  tri_bulle(str, strlen(str));
  printf("Voici votre chaîne triée: %sn", str);

  return 0;
}

Leave a Reply

Your email address will not be published. Required fields are marked *