главная/Javascript: алгоритм пузырьковой сортировки массива
Сортировка пузырьком

Javascript: алгоритм пузырьковой сортировки массива

Рассмотрим алгоритм пузырьковой сортировки массива в javascript. Для чего это нужно, к примеру у нас есть массив чисел, где все цифры расположены в разном порядке. Наша задача отсортировать его от меньшего к большему.

Пузырьковый алгоритм

  1. Создаем переменную swapped для определения была ли итерация с заменой элементов массива
  2. Создадим цикл for по массиву
  3. На каждой итерации проверяем если текущий элемент массива больше следующего
  4. Меняем местами текущий и следующий если во втором пункте будет true
  5. Ставим переменную swapped которую объявили выше в true, это означает, что в итерации была замена местами
  6. Следующая итерация: Если во втором пункте false ничего не делаем
  7. Всю логику заворачиваем в конструкцию do while, это значит что наш цикл будет повторяться пока переменная swapped не будет false. В начале конструкции присваиваем swapped false.

Цикл будет выполняться до тех пор, пока замена мест не закончится

Функция пузырьковой сортировки

function sortBubble( arr ) {
  let swapped;
  do {
    swapped = false;
    for( let i = 0; i < arr.length - 1; i++ ) {
      if ( arr[i] > arr[i+1] ) {
        let temp = arr[i];
        arr[i] = arr[i+1];
        arr[i+1] = temp;
        swapped = true;
      }
    }
  } while ( swapped )
}

let arr = [72, 0, -2, 66, -4, 3, 11];
sortBubble( arr );
console.log( arr );
// [-4, -2, 0, 3, 11, 66, 72]