Реализация быстрой сортировки - C (СИ) (148096)

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

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

Очень надеюсь на вашу помощь. Не смог разобраться сам

Решение задачи: «Реализация быстрой сортировки»

textual
Листинг программы
  1. #include <stdio.h>
  2. void qsort_k(int v[], int left, int right)
  3. {
  4.     int i, last;
  5.     void swap(int v[], int i, int j);
  6.     if(left>=right)
  7.         return;
  8.         swap(v, left, (left+right)/2);
  9.         last = left;
  10.         for(i=left+1; i<=right; i++)
  11.             if (v[i]<v[left])
  12.                 swap(v, ++last, i);
  13.         swap(v, left, last);
  14.         qsort_k(v, left, last-1);
  15.         qsort_k(v, last+1, right);
  16. }
  17. void swap(int v[], int i, int j)
  18. {
  19.     int temp;
  20.     temp=v[i];
  21.     v[i]=v[j];
  22.     v[j]=temp;
  23. }
  24. int main(void)
  25. {
  26. int a[10]={4,6,1,8,2,99,55,34,4,1};
  27.     qsort_k(a, 0, 9);
  28.     for(int i=0; i<10; ++i)printf("%d ", a[i]);
  29.     return 0;
  30. }

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


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

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

10   голосов , оценка 4.2 из 5

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

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

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