강의

멘토링

커뮤니티

Inflearn Community Q&A

wodms45256261's profile image
wodms45256261

asked

Jeju Coding Base Camp Code Festival: JavaScript 100 Questions

Problem 51: Let's create a merge sort

return merge(mergeSort(left), mergeSort(right));

Written on

·

221

0

return merge(mergeSort(left), mergeSort(right));

위 부분이 이해가 안되서 질문 남깁니다.

mergeSort(left)를 끝까지 다 돌고 나면 숫자가 하나밖에 안남는데,

어떻게 merge에서는 모든 값이 다 리턴되나요?

코테 준비 같이 해요! javascript

Answer 1

0

재귀함수라 좀 복잡한데요
mergeSoft 함수는 merge함수를 리턴하는데
return merge(mergeSort(left), mergeSort(right));
매개변수로 mergeSoft함수를 다시 호출하고 호출한 함수에서
merge함수를 다시 리턴하고 재귀함수 종료 조건
(배열의 크기가 1 이하일때까지)까지 반복된 다음에
요소가 하나인 배열에서부터야 merge 함수가 실행되요
merge함수가 실행되면 값이 정렬되면서 그 정렬된 값으로 다시
merge함수가 실행되는거죠
wodms45256261's profile image
wodms45256261

asked

Ask a question