Code source tri "Shell"
void tri_shell(int tableau[],int longueur)
{
int n, i, j, valeur;
n=0;
while(n<longueur)
{
n=3*n+1;
}
while(n!=0)
{
n=n/3;
for (i=n;i<longueur;i++)
{
valeur=tableau[i];
j=i;
while((j>(n-1)) && (tableau[j-n]>valeur))
{
tableau[j]=tableau[j-n];
j=j-n;
}
tableau[j]=valeur;
}
}
}