병합정렬(Merge Sort) 알고리즘
·
컴퓨터과학/알고리즘
병합정렬 알고리즘은 Divide and Conquer 알고리즘의 원칙을 기반으로 합니다.정렬되지 않은 데이터는 divide됩니다. 그리고 비교를 거쳐 정렬되게 됩니다.Divide and ConquerDivide and Conquer은 배열을 반반씩 나누며 하나가 될때까지 divide과정을 거친다.위의 예시에서는 6, 5, 12, 10, 9, 1 이 될때까지 divide를 한다.그리고 Conquer(정복)하는 과정에서 큰 수를 오른쪽으로 보내며 병합한다.왼쪽의 첫 번째 요소를, 오른쪽 배열의 모든요소와 비교하여 더 큰게 없다면 Merge할 배열의 인덱스에 차곡차곡 넣는다.그다음에는 오른쪽 배열의 요소를 왼쪽 배열과 비교하는 식으로 차례차례 반복한다.MergeSort알고리즘MergeSort(A, p, r):..
[Git] git branch를 모르면 얼른 들어와야지 뭐해.
·
웹개발/GIt
자 git branch를 모른다고?서론 접고 바로 시작한다.너가 코드를 짜다가, 새로운 기능을 추가하고 싶어.그러면 어떻게 해?원본 파일에 코드를 추가해도 좋지만, 잘못해서 오류가 나거나 망가지면 어떡할래?진짜 울고싶고 화나고 다 접고 싶을거야. 음음.. 그럴거야. 그러면 겁쟁이 같지만 복사본을 만들고 거기다가 추가하는 방법잉 ㅣㅆ어.이러면 잘못되었을때 복사본을 날리면 되니까 간단하지? 그런데 이런건 하남자나 하는거야.상남자는 이렇게.. 크흠 이럴때 사용하는게git branch 브랜치명위 명령어를 사용하면 새로운 가지(파일)을 만드는 거야.branch는 나무의 가지라고 생각하면 돼.하나의 가지를 만들어서 거기다가 파일을 옮기는건데 잘못되면 잘라버리면 되니까.어때 복사본 만드는거랑 비슷하지?나는 test1..