버블 정렬 (Bubble Sort)
인접한 두 원소를 비교하여 정렬하는 방식입니다. 큰 값이 한 칸씩 배열의 끝으로 밀려 나가는 모습에서 거품(bubble)이라는 이름이 붙었습니다. 구현이 단순하지만 큰 데이터에는 부적합합니다.
01버블 정렬 (Bubble Sort)
알고리즘 작동 원리 탐색버블 정렬을 시작합니다. 이웃한 두 값을 견줘 큰 쪽을 뒤로 보내는 일을 끝까지 반복합니다.
첫 번째 요소 45와 두 번째 요소 12를 비교합니다.
45 > 12이므로 위치를 교환합니다. 큰 값이 뒤로 이동합니다.
45와 89를 비교합니다. 89가 더 크므로 유지합니다.
89와 34를 비교하고 교환합니다.
89와 67을 비교하고 교환합니다.
89와 23을 비교하고 교환합니다.
89와 56을 비교하고 교환합니다.
마지막으로 89와 10을 비교하고 교환합니다.
첫 번째 회전 완료! 가장 큰 값 89가 마지막 자리에 안착했습니다.
나머지 패스(2~7회)를 완료합니다. 매 회전마다 가장 큰 값이 뒤로 이동합니다.
버블 정렬 완료! [10, 12, 23, 34, 45, 56, 67, 89] — 모든 요소가 오름차순으로 정렬되었습니다.
02 쉽게 이해하기
For Everyone이웃한 두 값을 비교해 순서가 어긋나면 바꿉니다. 한 번 훑을 때마다 가장 큰 값이 끝에 확정됩니다.
옆 칸과 비교해 순서가 틀리면 자리를 바꾸는 것을 반복합니다.
구현이 단순하지만 느려서(O(n²)) 큰 데이터엔 부적합해요.
- –정렬 개념 학습
- –거의 정렬된 소량 데이터
03 파이썬 구현 코드
버블 정렬 (Bubble Sort)의 핵심 로직을 담은 표준 구현 예시입니다. 가급적 간결하고 읽기 쉬운 코드로 작성되었습니다.
04 자주 묻는 질문
FAQ버블 정렬 (Bubble Sort)란 무엇인가요?+
인접한 두 원소를 비교하여 정렬하는 방식입니다. 큰 값이 한 칸씩 배열의 끝으로 밀려 나가는 모습에서 거품(bubble)이라는 이름이 붙었습니다. 구현이 단순하지만 큰 데이터에는 부적합합니다.
버블 정렬 (Bubble Sort)의 시간복잡도는 어떻게 되나요?+
버블 정렬 (Bubble Sort)의 시간복잡도는 O(n²) 입니다. 시각화의 단계별 진행을 따라가며 왜 이런 복잡도가 나오는지 직접 확인할 수 있습니다.
버블 정렬 (Bubble Sort)은(는) 어디에 사용하나요?+
정렬 개념 학습, 거의 정렬된 소량 데이터.
버블 정렬 (Bubble Sort)를 쉽게 비유하면?+
이웃한 두 값을 비교해 순서가 어긋나면 바꿉니다. 한 번 훑을 때마다 가장 큰 값이 끝에 확정됩니다.
