More actions
참여자 명단
| 의사 | 장용운 | 11학번 | 카벅 |
| 환자 | 천준현 | 15학번 | 카벅 |
| 최지혁 | 카벅 | ||
| 박인서 | 출석 |
수업
진행
- 장소 : 6층 학회실
- 시간 : 11:30 ~ 13:00
~~카벅 방문으로 늦어짐~~
내용
Pre-8강. Quick sort
- 퀵소트 해부
코드
예제1
#include <stdio.h>
#pragma warning(disable:4996)
void quicksort(int*, int, int);
void printarr(int*, int, int);
int main(void) {
int arr1[10] = { 4, 2, 1, 5, 3, 6, 2, 5, 3, 0 };
int arr2[10] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 };
int arr3[10] = { 9, 8, 7, 6, 5, 4, 3, 2, 1, 0 };
int arr4[10] = { 0, 1, 1, 1, 0, 3, 2, 2, 1, 0 };
printarr(arr1, 0, 9);
quicksort(arr1, 0, 9);
printarr(arr1, 0, 9);
printf("\n====================\n");
printarr(arr2, 0, 9);
quicksort(arr2, 0, 9);
printarr(arr2, 0, 9);
printf("\n====================\n");
printarr(arr3, 0, 9);
quicksort(arr3, 0, 9);
printarr(arr3, 0, 9);
printf("\n====================\n");
printarr(arr4, 0, 9);
quicksort(arr4, 0, 9);
printarr(arr4, 0, 9);
printf("\n====================\n");
return 0;
}
void quicksort(int* arr, int s, int e) {
if (e - s < 1) return;
int k = s;
int t = 0;
for (int i = s + 1; i <= e; i++) {
if (arr[s] > arr[i]) {
t = arr[k + 1];
arr[k + 1] = arr[i];
arr[i] = t;
k++;
}
}
t = arr[k];
arr[k] = arr[s];
arr[s] = t;
quicksort(arr, s, k - 1);
quicksort(arr, k + 1, e);
}
void printarr(int* arr, int s, int e) {
int i;
printf("Printing array.... { ");
for (i = s; i < e; i++) {
printf("%d, ", arr[i]);
}
printf("%d }\n", arr[e]);
}
숙제
- 이 페이지에 후기 작성하기!
- 오늘 공부한 개념 수업 페이지에 정리하기!
- Quicksort 완성하기
후기
- 후기 작성 요령 : 후기는 F4(ThreeFs + Future Action Plan)에 맞게 작성해주세요.
- Facts, Feelings, Findings, Future Action Plan. 즉, 사실, 느낀 점, 깨달은 점, 앞으로의 계획.
* *
- ~~왜 저 빼고 다 카벅...~~퀵소트를 구현했습니다. 힘든 점도 많았지만, 선배님이 도와주신 부분이 많아서 어렵~~지 않~~게 짤 수 있었습니다. 이보다 훨씬 어려운 것이 많기에 앞으로 더욱 노력해야겠다고 생각하였습니다. - 박인서