2024-09-03 08:26:03 +02:00
|
|
|
// Bubblesort Algorithm
|
|
|
|
// M.Menault 2024
|
|
|
|
|
|
|
|
void bubblesort(int* array, int length)
|
|
|
|
{
|
|
|
|
int swapped, i, tmp;
|
|
|
|
do
|
|
|
|
{
|
|
|
|
swapped = 0;
|
|
|
|
for(i=1;i<length;i++)
|
|
|
|
{
|
|
|
|
if(array[i-1] > array[i])
|
|
|
|
{
|
|
|
|
tmp = array[i-1];
|
|
|
|
array[i-1] = array[i];
|
|
|
|
array[i] = tmp;
|
|
|
|
swapped++;
|
|
|
|
}
|
|
|
|
}
|
2025-09-10 17:24:50 +02:00
|
|
|
} while(swapped > 0);
|
2024-09-03 08:26:03 +02:00
|
|
|
}
|
2025-09-10 17:24:50 +02:00
|
|
|
|
|
|
|
|
|
|
|
/* Trie rapide */
|
|
|
|
void permuter(int *a, int *b) {
|
|
|
|
int tmp;
|
|
|
|
tmp = *a;
|
|
|
|
*a = *b;
|
|
|
|
*b = tmp;
|
|
|
|
}
|
|
|
|
void triRapid(int* array, int first, int last) {
|
|
|
|
int pivot, i, j;
|
|
|
|
if(first < last) {
|
|
|
|
pivot = first;
|
|
|
|
i = first;
|
|
|
|
j = last;
|
|
|
|
while (i < j) {
|
|
|
|
while(array[i] <= array[pivot] && i < last)
|
|
|
|
i++;
|
|
|
|
while(array[j] > array[pivot])
|
|
|
|
j--;
|
|
|
|
if(i < j) {
|
|
|
|
permuter(&array[i], &array[j]);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
permuter(&array[pivot], &array[j]);
|
|
|
|
triRapid(tab, first, j - 1);
|
|
|
|
triRapid(tab, j + 1, last);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|