더북(TheBook)

① 숫자 열 개를 두 그룹(g1, g2)으로 나눕니다.

g1: [6 8 3 9 10]

g2: [1 2 4 7 5]

 

② 두 그룹을 각각 정렬합니다(재귀 호출 부분이므로 이 부분은 뒤에서 설명합니다. 일단 각 그룹을 정렬해 봅니다).

g1: [3 6 8 9 10]

g2: [1 2 4 5 7]

 

③ 이제 두 그룹을 합쳐 다시 한 그룹으로 만들겠습니다(병합).

두 그룹의 첫 번째 값을 비교하여 작은 값을 빼내 결과 리스트에 넣습니다. g1의 첫 번째 값은 3, g2의 첫 번째 값은 1이므로 1을 빼내 결과 리스트(result)에 넣습니다.

g1: [3 6 8 9 10]

g2: [2 4 5 7]

result: [1]

 

④ 두 그룹의 첫 번째 값을 비교하여 작은 값을 빼내 결과 리스트에 넣는 과정을 반복합니다. 이번에는 g22가 뽑혀 정렬됩니다.

g1: [3 6 8 9 10]

g2: [4 5 7]

result: [1 2]

 

⑤ 이번에는 g13이 뽑혀 정렬됩니다.

g1: [6 8 9 10]

g2: [4 5 7]

result: [1 2 3]

 

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.