본문 바로가기

Merge2

병합 정렬 이번에 소개할 정렬 방식은 병합 정렬입니다. 1. 병합 정렬 병합 정렬은 배열을 두개로 나누고 나눈 배열끼리 비교해서 작은 값을 먼저 넣으며 정렬하는 방식입니다. 이 과정에 한 번으로만 쪼개면 제대로된 정렬이 될리 없으므로 재귀를 이용해서 나눈 배열을 또 나누고 나누어 각 요소가 1개일 경우까지 쪼갠다음 비교해서 작은것 부터 순차적으로 넣으면됩니다. 병합 정렬의 시간 복잡도는 O(n log n)입니다. 다음과 같은 배열이 있으면, 두개의 배열로 나눕니다. 두 개의 배열로 나눈 다음에 나눈 배열의 첫 번째 요소끼리 비교해서 작은 요소를 먼저 넣고 인덱스를 1증가시켜 큰 요소를 넣으면 됩니다. 이대로 넣으면 [3, 9, 2, 4, 5, 7, 1, 8]로 정렬이 안되겠죠? 이를 위해 4개로 나눈것에서 다시 오.. 2021. 11. 3.
[Git] 병합 이전 작업까지 브랜치를 나누고 그 기능들에 대해서 살펴봤습니다. 그렇다면 이제 나눴던 브랜치들을 합쳐야 하는데, 이작업을 병합(merge)라고 합니다. 지난번에 실습하며 만든 파일을 그대로 이용해도 되겠지만, 병합 상황이 여러가지가 있고 저도 공부해나가면서 작업해가기에 새로운 폴더를 하나 만들어서 병합 실습을 하겠습니다. 실습을 위해 'a1'라는 새 디렉토리를 미리 만들었습니다. 1. 병합하기 a1 디렉토리의 내용은 t1이라는 txt파일 하나가 존재합니다. 그리고 이 파일의 내용은 1이라는 문자 하나가 적혀있습니다. (글에선 생략했지만 커밋까지 완료해 주세요.) 이 상태에서 "b1"이라는 이름을 가진 브랜치를 하나 만들도록합니다. 그리고 master에서 작업 중인 상태로 t2.txt파일을 하나 더 만들어.. 2021. 8. 23.
300x250