Besoin de compréhension sur un algo
Bonsoir
Pendant quelque heure j'ai bloqué sur un programme dont l'intitulé était de trier par ordre croissant les valeurs d'un tableau je suis tombé sur ça et j'essaye d'en saisir le sens
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| while (i < tab_size)
{
j = i+1; // Ici pourquoi faire sa ? pourquoi dire que notre variable j = la valeur de i + 1 ? (j et i étant ce qui va nous permettre
while (j < tab_size)*** // de parcourir notre tableau)
{
if(tab[j] < tab[i])
{
tmp = tab[i]; // Ici j'ai compris le principe on affecte notre résultat dans une variable temporaire
tab[i] = tab[j]; // pour ensuite la mettre dans tab[j] (un swap)
tab[j] = tmp;
}
j++;
}
printf("[%d] => %d\n", i, tab[i]); // est dernier point Pourquoi tab[i] est non tab[j] notre résultat est pourtant stocker dans tab[j]
i++; // (tab[j] = tmp)
}
} |
Un grand merci à celui qui pourrais m'éclairer
Les commentaires sont de moi