Я попытался реализовать псевдокод для сортировки гребня в wikipedia, но, похоже, он сортирует массив образцов, который я ему даю. Какие-нибудь советы?Выполнение сортировки гребенки не точно сортируется, C++
void combSort(int* list, int length)
{
bool swapper;
int gap = length;
double shrink = 1.25;
int temp;
do{
gap = (int) gap/shrink;
if (gap < 1)
gap = 1;
swapper = false;
for (int i=0;(i+gap)<length;i++){
if (list[i] > list[i+gap]){
swap(list[i],list[i+gap]);
swapper = true;
}
}
}
while ((gap > 1) && (swapper == true));
}
Если вы собираетесь использовать C++, почему бы не использовать контейнеры стандартной библиотеки, такие как 'std :: array' или' std :: vector' здесь? Здесь у вас есть код C. – tadman
И если это C, функция подкачки, вероятно, не работает. Вам нужно пройти по ссылке, а не по значению. – AShelly