- 버블 정렬은 두 인접한 데이터의 크기를 비교해 정렬하는 방법이다.
- 간단하게 구현이 가능하나, 시간복잡도가 O(n^2) 으로 속도가 느리다.
- 다음 그림과 같이 루프를 돌면서 인접한 데이터 간의 swap 연산을 통해 정렬한다.

- 정렬 과정은 다음과 같다.
- 비교 연산이 필요한 루프 범위를 설정한다.
- 인접한 데이터 값을 비교한다.
- swap 조건에 부합하면 swap 연산을 수행한다.
- 루프 범위가 끝날 때 까지 2 ~ 3을 반복한다.
- 정렬 영역을 설정한다. 다음 루프를 실행할 때는 이 영역을 제외한다.
- 비교 대상이 없을 때 까지 1 ~ 5를 반복한다.
- 만약 특정한 루프의 전체 영역에서 swap이 한 번도 발생하지 않았다면 그 영역 뒤에 있는 데이턱 모두 정렬됐다는 뜻이므로 프로세스를 종료해도 된다.