길이 0 또는 1은 이미 정렬된 배열입니다.
재귀 호출은 정렬된 배열을 반환하고, 병합 단계는 가장 작은 원소를 앞에서부터 선택해 같은 계약을 상위 호출로 넘깁니다.
left와 right의 아직 남은 구간은 각각 정렬돼 있고, merged에는 지금까지 뽑은 값 중 가장 작은 값들이 순서대로 들어 있습니다.
길이 0 또는 1은 이미 정렬된 배열입니다.
<=로 왼쪽 값을 먼저 뽑으면 안정성이 유지됩니다.
한쪽이 비면 다른 한쪽의 남은 값을 모두 붙입니다.