BubbleSort - C (СИ)

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

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

Напишите пожалуйста функцию сортировки бульбашкой. Спасибо

Решение задачи: «BubbleSort»

textual
Листинг программы
#define SWAP(A, B) { int t = A; A = B; B = t; }
 
void bubblesort(int *a, int n)
{
  int i, j;
 
  for (i = n - 1; i > 0; i--)
  {
    for (j = 0; j < i; j++)
    {
      if (a[j] > a[j + 1]) 
        SWAP( a[j], a[j + 1] );
    }
  }
}

Объяснение кода листинга программы

  1. Предопределенный макрос SWAP используется для обмена значениями двух переменных типа int.
  2. Входные параметры функции bubblesort: a - указатель на массив целых чисел, n - количество элементов в массиве.
  3. Внутри функции объявлены две переменные i и j типа int, которые будут использоваться в двух вложенных циклах.
  4. Внешний цикл for выполняется n-1 раз, начиная с n-1 и заканчивая 1.
  5. Внутренний цикл for выполняется i раз, начиная с 0 и заканчивая i-1.
  6. Если a[j] больше a[j+1], то с помощью функции SWAP значения этих двух элементов меняются местами.
  7. Функция bubblesort сортирует массив по возрастанию.

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


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

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

7   голосов , оценка 3.714 из 5