Bonjour

J'ai vu un tri à bulle sur les sources C : http://c.developpez.com/sources/?pag...THME_tri_bulle
Pour moi, ce tri n'est absolument pas optimisé ! Même pour un tri à bulle !

Je proposerais, avec chaine, la liste à trier et l sa longueur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
for (i=0;i<l-1;i++)
{
    j_max=i;
    c_max=chaine[i];
    for (j=i+1;j<l;j++)
    {
        if (chaine[j]<c_max)
        {
            j_max=j;
            c_max=chaine[j];
        }
    }
    chaine[j_max]=chaine[i];
    chaine[i]=c_max;
}
En gros, je cherche le plus petit, je le mets devant en échangeant sa place avec celui de devant et je recommence , mais en commençant une case plus loin.