merge함수에서 한가지 문제점만 빼면 참신하게 잘 짰습니다. 제가 처음 짤 때와 같은 오류가 발생했습니다. "IndexError" 이유는 첫번째 조건에서 or가 아닌 and 여야 합니다. 코딩을 할 때 여러개의 함수를 만든다면 항상 만든 함수가 제대로 작동하는지부터 확인해보고 넘어가세요. 나중에 한꺼번에 돌릴 때 오류가 발생한다면 어디서 발생한 오류인지 확인하기가 힘듭니다.
+0
2019년 5월 30일
저 같은 경우 merge함수를 만들고 바로 merge 함수만을 테스트했기때문에 문제점을 쉽게 해결할 수 있었습니다.
+0
2019년 5월 30일
merge_sort함수는 재귀함수에 대한 이해가 부족한걸로 보입니다. 재귀함수의 핵심은 코드의 단순화입니다. for문은 코드가 복잡해지는 대신 과정이 명확히 보이지만, 재귀함수는 코드가 단순한 대신 과정이 숨겨져 있어 직관적인 이해가 힘든 단점이 있습니다.
+0
2019년 5월 30일
merge_sort의 재귀조건은 정렬되었지만 분할된 리스트를 합치는 것입니다. 정렬되었다는 것은 merge_sort 함수를 말하는 거고, 함친다는 것은 merge 함수를 말하는 것입니다.
+0
2019년 5월 30일
따라서 재귀조건은 return merge(merge_sort(반으로 나눠진 한쪽), merge_sort(나머지 한쪽)) 입니다.
댓글 2개