Быстрая сортировка Си/С++ - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Есть быстрая сортировка:
Листинг программы
  1. void quick_sort(int* sarr, int j) {
  2. int size = j;
  3. int k = 0;
  4. int c = sarr[(int)(j / 2)];
  5. int tmp = 0;
  6. do {
  7. while (sarr[k] < c) k++;
  8. while (sarr[j] > c) j--;
  9. if (k <= j) {
  10. tmp = sarr[k];
  11. sarr[k] = sarr[j];
  12. sarr[j] = tmp;
  13. k++;
  14. j--;
  15. }
  16. } while (k <= j);
  17. if (j > 0) quick_sort(sarr, j);
  18. if (j > 0) quick_sort(sarr + k, size - k);
  19. }
Как сделать что бы сортировались только четные числа?

Решение задачи: «Быстрая сортировка Си/С++»

textual
Листинг программы
  1. void quick_sort(int* sarr, int j) {
  2.     int size = j;
  3.     int k = 0;
  4.     int c = sarr[(int)(j / 2)];
  5.     int tmp = 0;
  6.     do {
  7.         while (sarr[k] < c) k++;
  8.         while (sarr[j] > c) j--;
  9.  
  10.         if(sarr[j]%2==0)
  11.             if (k <= j) {
  12.                 tmp = sarr[k];
  13.                 sarr[k] = sarr[j];
  14.                 sarr[j] = tmp;
  15.                 k++;
  16.                 j--;
  17.             }
  18.     } while (k <= j);
  19.     if (j > 0) quick_sort(sarr, j);
  20.     if (j > 0) quick_sort(sarr + k, size - k);
  21.     }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 3.933 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут