algorithm

mergesort

cheesecrust1008 2022. 10. 25. 14:24

합병정렬이란 퀵정렬을 보완해서 나온 정렬 방법이라고 생각된다.

 

퀵 정렬은 기준값을 세운 후 왼쪽 오른쪽에 각각에 나누면서 정렬을 한다. 따라서 나누면서 이진트리 형태를 띄게 된다.

 

이에 최악의 경우에는 시간복잡도가 N^2이다. 이를 개선하여 처음부터 나누어진 수들을 합치면서 정렬을 한다. 나뉜상태에서 하기 때문에 NlogN으로 시간 복잡도가 일정하다. 

 

코드로 표현하자면

위의 설명과 같이 시간 복잡도는 NlogN이다.

'algorithm' 카테고리의 다른 글

Graph  (1) 2022.12.14
Tree  (0) 2022.12.14
15663  (0) 2022.07.14
합병정렬  (0) 2022.03.06
퀵정렬  (0) 2022.03.06