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] ); } } }
Объяснение кода листинга программы
- Предопределенный макрос SWAP используется для обмена значениями двух переменных типа int.
- Входные параметры функции bubblesort: a - указатель на массив целых чисел, n - количество элементов в массиве.
- Внутри функции объявлены две переменные i и j типа int, которые будут использоваться в двух вложенных циклах.
- Внешний цикл for выполняется n-1 раз, начиная с n-1 и заканчивая 1.
- Внутренний цикл for выполняется i раз, начиная с 0 и заканчивая i-1.
- Если a[j] больше a[j+1], то с помощью функции SWAP значения этих двух элементов меняются местами.
- Функция bubblesort сортирует массив по возрастанию.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д