본문 바로가기
CS/알고리즘

[알고리즘] 정렬 - 버블 정렬(bubble sort)

by 서현 SEOHYEON 2022. 11. 28.

🟡 버블 정렬(bubble sort)

- 두 인접한 데이터의 크기를 비교하고, swap 연산을 수행하며 정렬하는 방식

- 장점: 간단하게 구현 가능

- 단점: 시간 복잡도가 O(n^2)으로 다른 정렬 알고리즘에 비해 속도가 느린 편

 

🟡 버블 정렬 과정

① 비교 연산이 필요한 루프 범위를 설정한다.

② 인접한 데이터 값을 비교한다.

③ swap 조건에 부합하면 swap 연산을 수행한다.

④ 루프 범위가 끝날 때 까지 ②~③을 반복한다.

⑤ 정렬 영역을 설정한다. 다음 루프를 실행할 때는 이 영역을 제외한다.

⑥ 비교 대상이 없을 때 까지 ①~⑤를 반복한다.

+ 만약 특정한 루프의 전체 영역에서 swap이 한 번도 발생하지 않았다면 데이터가 모두 정렬됐다는 뜻이므로 프로세스를 종료해도 된다.

댓글