[알고리즘] 합병정렬
·
개발/알고리즘
1. 합병정렬 기존 버블, 선택, 삽입정렬은 O(N^2)의 시간복잡도를 가진다. 합병정렬을 통해 o(NlogN)으로 향상시킬 수 있다. 합병 정렬은 분해와 합병 2가지 순서로 나눌수 있다. 예시 ) [8,3,5,4,7,6,1,2] 반으로 분할하여 시작 [8,3,5,4] [7,6,1,2] 다시 나눔 [8,3] [5,4] [7,6] [1,2] 다시 나눔 [8] [3] [5] [4] [7] [6] [1] [2] 정렬하면서 합친다. [3,8] [4,5] [6,7] [1,2] [3,4,5,8] [1,2,6,7] [1,2,3,4,5,6,7,8] 2. 합병정렬 순서 (1) 빈배열 만들기, 입력 두개를 취하는 함수를 정의하여 마지막에 반환할 빈 뱅열 만들기 (2) i와 j가 각각 배열끝에 도달하지 않았다면 첫번째 배열..