분할 정복 이해

분할 정복 접근방법은 크게 3단계로 나눌수 있습니다.

  1. 분할 : 주어진 문제를 모두 동일하게 해결할 수 있는 세부 문제로 나눕니다.
  2. 정복 : 나누어진 세부 문제들의 해답을 구합니다.
  3. 결합 : 해답이 구해진 세부 문제들을 결합하여 전체문제의 해답을 구합니다.

분할 정복을 이용한 정렬 알고리즘

정렬 알고리즘 구현에 있어 필요한 3가지 요구사항이 있습니다.

  1. 모든 데이터 타입에 대해 동작해야 합니다.
  2. 많은 양의 데이터를 처리할 수 있어야 합니다.
  3. 점근적 시작 복잡도 측면이나 실제 동작시 빨라야 합니다.

크게 3가지 정렬 알고리즘이 소개되었습니다.

  1. 병합 정렬
  2. 퀵 정렬
  3. 선형 시간 선택