Bonjour tous le monde,
Je me permets vous solliciter parce que je bloque sur une exercice algorithmique. C'est à dire , j'ai un tableau de N valeur. Je dois calculer la moyenne de ce tableau puis trier tous les valeurs inférieur à la moyenne placer au début du tableau sans changer d'ordre. Puis mettre les valeurs supérieurs vers la fin de tableau sans changer ordre. Le problème, je sais trier en utilisant deux tableau (vois code). Mais il faut faire sans utiliser un autre tableau. C'est là que cela pose problème. Pouvez-vous me dire les astuces à utiliser pour réussir le tri ?
Par exemple tab[N] = { 5, 2, 4,5,2,6,9,7,9,6}
Je vous remercie d'avance.
Cordialement
uba tuba
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14 // m represent la moyenne , je calcule la moyenne, puis je place tous les éléments inférieurs au début dans un autre tableau m=0; d=m; tableau2 =new int[N]; for(i=0;i<N;i++) { if(tab[i]<moyenne) { tableau2[m]=tab[i]; m=m+1; } else { tableau[d]=tab[i]; d=d+1; } }