버블 정렬 이란 무작위로 정렬되어 있는 N개의 배열을 오름차순 / 내림차순으로 정렬하는 방법 중의 하나이다.
서로 붙어 있는 두 값을 순차적으로 비교해나가면서 마지막 값까지 비교하여 정렬하는 방법이다.
- 구현은 간단하나 처리속도가 매우 느리다.
작업 순서
-
bubbleSort(arr)을 정의한다.
-
for문으로 전체 배열의 갯수로 순회한다.
-
for문을 중첩하여 정렬이후 남은 배열의 갯수 - 1 갯수로 순회한다.()
-
인접한 두 수를 비교하여 서로 교환한다.
코드 적용
const bubbleSort = (arr = []) => {if (!arr.length) return console.log('oops')for (let i = 0; i < arr.length - 1; i++) {let tempfor (let j = 0; j < arr.length - 1 - i; j++) {if (arr[j] > arr[j + 1]) {temp = arr[j]arr[j] = arr[j + 1]arr[j + 1] = temp}}}return console.log(arr)}bubbleSort([3, 1, 8, 5, 20, 15])// [ 1, 3, 5, 8, 15, 20 ]