본문 바로가기

스터디93

[ 자료구조 ] Quick sort 퀵 정렬 : 특정한 값(Pivot)을 기준으로 큰 숫자와 작은 숫자를 구분하는 정렬입니다. - 분할정복 알고리즘을 사용한다. - 피봇을 설정하고, data[i] > data[pivot]이고, data[j] j 처럼 엇갈린경우, 피봇과 j를 바꾼다. - i data[pivot] 이고 data[j] < data[pivot] 인 경우 data[i]와 data[j]를 스왑한다. - 재귀 함수를 이용해서, 분할 알고리즘을 실행한다. 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 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 int array[10] = { 1, 9, 4, .. 2020. 2. 23.
[ 자료구조 ] Insertion sort 삽입 정렬 : 앞의 원소보다 크고, 뒤에 원소보다는 작은 위치에 보내는 정렬입니다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 int main() { int array[10] = { 1, 9, 4, 10, 6, 2, 5, 3, 7, 8 }; int temp, j; for(int i = 0; i = 0 && array[j] > array[j + 1]) { temp = array[j]; array[j] = array[j + 1]; array[j + 1] = temp; j--; } } return 0; } 2020. 2. 23.
[ 자료구조 ] Bubble Sort 버블 정렬 : 옆에 있는 값을 비교해서 큰값을 뒤로 보내는 과정을 반복하는 정렬입니다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 int main() { int array[10] = { 1, 9, 4, 10, 6, 2, 5, 3, 7, 8 }; int temp; for(int i = 0; i 2020. 2. 23.
[ 자료구조 ] Selection Sort 선택 정렬 : 가장 작은 값을 맨 앞으로 보내는 과정을 반복하는 정렬입니다. 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 int main() { int array[10] = { 1, 9, 4, 10, 6, 2, 5, 3, 7, 8 }; int min, index, temp; for(int i = 0; i 2020. 2. 23.