#include "sortierung.h" void tausche(int *zahl1, int *zahl2) { int tmp = *zahl1; *zahl1 = *zahl2; *zahl2 = tmp; } unsigned int findeMaxIdx(int array[], unsigned int len) { unsigned int maxIdx = 0; for(int i = 1; i < len; i++) { if(array[i] > array[maxIdx]) { maxIdx = i; } } return maxIdx; } void selectionsort(int array[], unsigned int len) { for(int unsortierteLaenge = len; unsortierteLaenge >= 2; unsortierteLaenge--) { unsigned int maxIdx = findeMaxIdx(array, unsortierteLaenge); tausche(&array[maxIdx], &array[unsortierteLaenge-1]); } } void bubblesort(int array[], unsigned int anzahl) { int wurdeGetauscht = 1; for(int i = anzahl-1; i >= 1 && wurdeGetauscht; i--) { wurdeGetauscht = 0; for(int j = 0; j < i; j++) { if(array[j] > array[j+1]) { tausche(&array[j], &array[j+1]); wurdeGetauscht = 1; } } } }