Одной из наиболее часто производимых над массивом операций является сортировка.


Сортировкой массива называется процедура упорядочивания его элементов.


Существует множество алгоритмов сортировки, которые различаются по скорости выполнения и по эффективности использования памяти.


Рассмотрим подробно алгоритм "Пузырек", который не относится к эффективным алгоритмам. Однако он прост для понимания и в случаях небольшой размерности массива работает вполне приемлемо.


Пусть нам дан неупорядоченный массив:


12

89

3

56

97

71

4

37

10

2


Требуется отсортировать его по возрастанию.


Будем последовательно сравнивать два соседних элемента. Если какой-либо элемент оказался больше правого соседа, то меняем эти два элемента местами.


В результате первой итерации массив приобретет вид:


12

3

56

89

71

4

37

10

2

97


Мы видим, что самый большой элемент «всплыл» в конец массива. При этом после одной итерации у нас получился отсортированный «хвост», состоящий из одного элемента.


Повторим эти действия несколько раз. После 4-х итераций наш массив будет иметь отсортированный «хвост» из 4-х элементов.


3

12

4

37

10

2

56

71

89

97


Повторяя эти действия n-1 раз (n – размерность массива), мы получим полностью отсортированный массив.


Листинг программы, реализующей рассмотренный алгоритм, приведен ниже:


Ассоциативная связь


Эта программа выдает следующий результат:


Ассоциативная связь