Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 배열메소드
- 케이스메소드
- 경제학적설명
- 경제학
- devlift
- 금융기초
- 바닐라자바스크립트
- 개발자되기
- 파생경제학
- 자바스크립트
- 파생상품
- 주식기초
- 채권기초
- 9급경제학
- 비전공자 개발
- 콜드콜
- case method
- 파생금융
- 경제학기초
- 비전공자개발자
- 경제학적기초지식
- 코딩
- 하버드MBA
- 경제학적개념
- 주식과채권
- 개발자
- 국내수출
- 문과 개발
- 비전공자 코딩
- 7급경제학
Archives
- Today
- Total
deVSner
합병정렬 본문
제로초님의 블로그를 보면서 공부했다.
https://www.zerocho.com/category/Algorithm/post/57ee1fc107c0b40015045cb4
(Algorithm) 합병(머지, 병합) 정렬
안녕하세요. 이번 시간에는 합병 정렬(머지 정렬 또는 병합 정렬)에 대해 알아보겠습니다. 삽입 정렬보다는 더 복잡하지만, 성능은 훨씬 좋아 자주 쓰이는 정렬 방법 중 하나입니다. 합병 정렬�
www.zerocho.com
개념은 어렵게 느껴지지 않았다.
정렬을 해야 하는 배열이 있고,
걔네들을 재귀적으로 원소 단위까지 쪼갠 다음에, 원소와 원소끼리 비교하며 정렬하는 방식이었다.
내가 헷갈렸던 부분은,
mergeSort 안에 return 값으로 merge(mergeSort(xxx), mergeSort(xxx))를 할당하는 부분이었다.
재귀적으로 mergeSort가 원소 단위까지 특정 배열을 쪼개는 것은 이해를 했다.
하지만, 쪼갠 다음에
합쳐진 배열끼리 다시 merge 하는 과정이 이해가지 않았다.
직접 종이와 펜으로 로직을 줄 그어가며, 마치 내가 콘솔이 된듯양 뜯어봤다.
문제점을 알게 되었다.
return 값으로 merge를 무시하고 사고 했던 것이었다.
merge가 계속 누적되어서, mergeSort가 탈출 조건이 발동할 때까지, 따라 붙어야 하는데
중간에 merge를 빼고 생각했던 것이다.
'자료구조 및 알고리즘' 카테고리의 다른 글
버블정렬 (0) | 2020.07.16 |
---|---|
RomanNumeralTranslator 알고리즘 풀이 (feat. 순서도) (0) | 2020.05.06 |
(작성 중) 재귀함수를 사용할 때, 값이 중복으로 들어가는 경우? (0) | 2020.04.11 |
[edabit] Fix the Code: Un-Mutating an Array - 문제 해결 과정 및 배운 점(구조분해 할당) (0) | 2020.04.05 |
재귀 함수 사용 시에 간과했던 실행 순서 (0) | 2020.04.02 |