Принцип работы сортировки пузырьком заключается в том, что алгоритм состоит из повторяющихся проходов по сортируемому массиву. habr.com За каждый проход элементы последовательно сравниваются попарно, и, если порядок в паре неверный, выполняется перестановка элементов. habr.com
В общем виде алгоритм пузырьковой сортировки выглядит так: thecode.media
- Берём самый первый элемент массива и сравниваем его со вторым. thecode.media Если первый больше второго — меняем их местами с первым, если нет — ничего не делаем. thecode.media
- Затем берём второй элемент массива и сравниваем его со следующим — третьим. thecode.media Если второй больше третьего — меняем их местами, если нет — ничего не делаем. thecode.media
- Проходим так до предпоследнего элемента, сравниваем его с последним и ставим наибольший из них в конец массива. thecode.media
- Возвращаемся в начало алгоритма и делаем всё снова точно так же, начиная с первого и второго элемента. thecode.media Только теперь даём себе задание не проверять последний элемент — мы знаем, что теперь в конце массива самый большой элемент. thecode.media
- Когда закончим очередной проход — уменьшаем значение финальной позиции, до которой проверяем, и снова начинаем сначала. thecode.media Так делаем до тех пор, пока не останется один элемент. thecode.media
При каждом проходе алгоритма по внутреннему циклу очередной наибольший элемент массива ставится на своё место в конце массива рядом с предыдущим наибольшим элементом («всплывает» до нужной позиции, как пузырёк в воде), а наименьший элемент перемещается на одну позицию к началу массива. habr.com