Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- static void echange (int T[], unsigned i, unsigned j) {
- int tmp;
- tmp = T[i];
- T[i] = T[j];
- T[j] = tmp;
- }
- unsigned int segmentation (int T[], unsigned g, unsigned d) {
- unsigned i, j;
- int piv = T[d];
- i = g - 1;
- for (j = g; j < d; j++)
- if (T[j] <= piv)
- echange(T, ++i, j);
- echange(T, i+1, d);
- return i+1;
- }
- void tri_rapide (int T[], unsigned g, unsigned d) {
- unsigned piv;
- if ((g >= d) || (d == -1U))
- return;
- piv = segmentation(T, g, d);
- tri_rapide(T, g, piv-1);
- tri_rapide(T, piv+1, d);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement