728x90

합병 정렬 2

Merge Sort Algorithm

합병 정렬(merge sort)알고리즘이란, 분할 정복(divide and conquer) 기반인 정렬 알고리즘이다.쉽게 말하자면, 더 이상 쪼개질 수 없을 정도의 단위로 쪼갠 후에, 합병하면서 정렬하는 것이다. 일단 합병 정렬 알고리즘의 실행시간은 재귀적 표현을 가지고 있기 때문에, 값을 직접적으로 알 수 없다는 특징이 있다.e.g. T(n) = T(n-1) + 2 자, 먼저 배열을 최소 단위로 먼저 쪼개는 방법이다.배열 A가 p부터 r까지의 원소를 가진다면, 그 중간값인 q를 먼저 찾는다.⌊⌋이런 기호가 보이는데, floor연산이며 안의 값보다 크지 않는 최대의 정수(내림)값을 찾는 연산이다.그리고 나눠진 배열에서의 각각 중간값을 찾는 과정을 반복한다(재귀). $n_1$에는 배열A의 처음 원소부터 중..

Getting Started

알고리즘 공부 좀 미리 해둘걸ㅠㅅㅠ 이 과목은 철저한 복습과 암기가 살 길이라는 것을 2주차에 직감했다... 진짜 행복하네수업시간에 모르는 것들이 나오면 따로 공부해서 추가적인 포스팅을 하도록 하겠슴미다. Insertion Sort: 삽입 정렬삽입 정렬 알고리즘이란 자료 배열의 모든 요소를 앞에서부터 차례대로 이미 정렬된 배열 부분과 비교하여, 자신의 위치를 찾아 삽입하고 정렬하는 알고리즘이다.쉽게 말하자면, 카드 정리라고 할 수 있다. 나는 원카드 게임을 할 때 패를 받으면 오름차순으로 정렬을 한다(2, 5, 8, 9). 또 새로운 카드를 손에 넣었을 때 숫자 크기를 비교하여 알맞은 위치에 카드를 꽂아넣는다(2, 5, 7(new!), 8, 9). 이게 삽입 정렬이다.  삽입 정렬 알고리즘의 알맞게 수행..

728x90