피드로 돌아가기
Merge Sort vs Bubble Sort — Why 800 Comparisons Beats 147 Every Time
Dev.toDev.to
Backend

30개 요소 정렬 시 비교 횟수 800회에서 147회로 단축한 Merge Sort의 효율성

Merge Sort vs Bubble Sort — Why 800 Comparisons Beats 147 Every Time

Amar Gul2026년 5월 16일1beginner

Context

Bubble Sort의 인접 요소 단순 비교 방식에 따른 O(n²) 시간 복잡도 한계 발생. 데이터 규모 증가 시 기하급수적으로 늘어나는 Comparison 횟수로 인한 성능 저하 문제 직면.

Technical Solution

  • 분할 정복(Divide and Conquer) 전략을 통한 배열의 최소 단위 분해
  • 단일 요소의 정렬 상태를 전제로 한 Recursive 구조 설계
  • 정렬된 그룹 간의 효율적 결합을 통한 O(n log n) 복잡도 보장
  • React의 useState와 useRef를 활용한 External Library 없는 애니메이션 상태 관리
  • 색상 코딩 체계(Purple, Gold, Red, Cyan)를 통한 알고리즘 상태 가시화 구현

1. 데이터 셋 규모가 커질수록 O(n²) 알고리즘 배제 및 O(n log n) 이상 수준의 알고리즘 검토

2. 최악의 경우(Worst-case) 성능 보장이 필요한 시스템에서 Merge Sort의 Stable한 시간 복잡도 활용

3. 복잡한 상태 변화 시각화가 필요할 경우 외부 라이브러리 대신 원자적 상태 관리 도구(useRef 등) 검토

원문 읽기