본문 바로가기

정렬

[프로그래밍] 삽입정렬(Insert Sort)이란? * 이 자료를 퍼 가셔서 타사이트나 블로그에 게재 시 출처를 명시해 주시기 바랍니다. 본 사이트에 게재된 모든 내용 및 자료는 상업적인 용도로 이용할 수 없습니다. 1. 삽입정렬(Insert Sort)이란? -. 가장 왼쪽에 있는 첫번째 값을 이미 정렬된 상태로 가정하고 나머지 자료들을 정렬한다. -. 두번째 값을 기준으로 첫번째 값을 비교하여 값에 따라 순서대로 나열하며, 세번째 값을 기준으로 두번째 값과 첫번째 값을 비교하여 값에 따라 순서대로 나열한다. 위와 같은 방법으로 n - 1개의 값과 비교하여 삽입될 적당한 위치를 찾아 삽입한다. -. 이미 정렬이 된 부분에 새로운 값을 적절한 순서에 삽입하는 동작을 반복적으로 하는 정렬이다. -. 적은 비교와 많은 교환이 필요한 방법이므로 소량의 자료를 처.. 더보기
정렬 알고리즘 소스모음 각각의 정렬 알고리즘에 대한 원리를 이해하고 실제로 직접 구현해본 코드를 남겨둔다. 먼저 예로 사용되는 data의 정의는 다음과 같다. const size_t cntData = 20; int data[cntData];첫번째, Selection Sort void selectionSort(int data[], size_t cntData) { for(size_t beginIdx=0; beginIdx0) { data[j] = data[j-1]; j--; } data[j] = t; } }세번째, 최악의 Bubble Sort void bubbleSort(int data[], size_t cntData) { for(size_t i=cntData-1; i>0; i--) { for(size_t j=0; jdata[j+1.. 더보기