Newer
Older
#include "triRapideInsertion.h"
#include "triInsertion.h"
void sousTriRapideInsertion(long* A, size_t p, size_t r) {
triInsertion(A, r-p);
}
else
{
size_t q = partition_wInsertion(A, p, r);
sousTriRapideInsertion(A, p, q);
sousTriRapideInsertion(A, q+1, r);
}
}
}
}
size_t partition_wInsertion(long* A, size_t p, size_t r) {
long pivot = A[r-1];
size_t i = p;
for (size_t j = p; j <= r-2; j++) {
if (A[j] <= pivot) {
long temp = A[i];
A[i] = A[j];
A[j] = temp;
i++;
}
}
long temp = A[i];
A[i] = A[r-1];
A[r-1] = temp;
return i;
}
void triRapideInsertion(long* A, size_t n) {