sungyup's.

javascript_algorithm / 정렬 알고리즘 / 3.5 Big O of Sorting Algorithm

3.5Big O of Sorting Algorithm

기본 정렬 알고리즘들의 시간 복잡도 및 공간 복잡도

추억의 쪽지 시험

기본 정렬 알고리즘들의 Big O

Bubble Sort(버블 정렬), Insertion Sort(삽입 정렬), Selection Sort(선택 정렬)은 기본적인 정렬 알고리즘들로, 시간 복잡도가 O(n²)이기 때문에 Quadratic Sort라고도 불린다.

알고리즘시간 복잡도(Best)시간 복잡도(Average)시간 복잡도(Worst)공간 복잡도
버블 정렬O(n)O(n²)O(n²)O(1)
삽입 정렬O(n)O(n²)O(n²)O(1)
선택 정렬O(n²)O(n²)O(n²)O(1)

이 방법들은 정렬 방식이 다르지만, 대체로 시간이 많이 걸리는 편이다.

다음 포스팅보다는 보다 빠른 정렬 알고리즘들에 대해 알아보자.

  • Merge Sort
  • Quick Sort
  • Radix Sort

이 정렬 알고리즘들은 앞서 본 기본 정렬 알고리즘들보다 훨씬 빠르지만(O(n log n)), 공간 복잡도가 늘어난다.