본문 바로가기
반응형

[알고리즘 + 자료구조]/[Do it 자료구조와 함께 배우는 알고리즘]10

[알고리즘] Do it 자료구조와 알고리즘 6장 정리 2/2 Q_19, Q_20 나중에 다시보기 연습문제 Q_12 > 요소의 이동 횟수를 계산할 수 있도록 버전 1과 버전 2를 수정한 프로그램을 작성하세요. 여러 가지 배열을 입력하고 프로그램을 실행하며 이동 횟수를 비교해 보세요. 버전 1 #include #include // 셸 정렬 함수 void shell(int a[], int n) { int i, j, h, count=0; for(h = n/2; h > 0; h/=2) { for(i = h; i =0 && a[j] > tmp; j-=h) { a[j + h] = a[j]; count++; } a[j + h] = tmp; // a[j]가 아닌 a[j + h]인 이유는, 종료 전에 .. 2020. 11. 27.
[알고리즘] Do it 자료구조와 알고리즘 5장 정리 너무나도 어려웠던 5장.. 재귀함수를 비재귀함수로 구현하는게 힘들었다. 5장은 두고두고 계속 봐야할 것 같다. 특히 Q5, Q7 연습문제_Q1 > 재귀 함수 호출을 사용하지 않고 factorial 함수를 작성하세요. #include int factorial(int n) { int total=1; // 0팩토리얼은 1. 0팩토리얼 값. 그리고 1까지 포문 진행(1은 의미없어서 안해줘도 되긴함) for(int i=n; i>0; i--) { total*=i; } return total; } int main() { int N; printf("숫자 입력 : "); scanf("%d", &N); printf("%d ! = %d\n", N, factorial(N)); return 0; } //제공된 정답 ///*--.. 2020. 10. 28.
[알고리즘] Do it 자료구조와 알고리즘 4장 정리 연습문제_Q1 > IntStack.c에서 제공하는 함수를 모두 사용하여 프로그램을 만드세요. [ IntStack.h ] // // Intstack.h // helloC // // Created by Hevton on 2020/10/14. // /* int형 스택 IntStack 헤더 */ #ifndef Intstack_h #define Intstack_h typedef struct { int max; // 스택의 최대 용량 int ptr; // 스택에 쌓여있는 데이터의 개수를 나타내는 스택 포인터. 포인터 변수를 의미하지 않으며, '스택의 인덱스를 가리킨다'라는 의미로 그렇게 부름 int *stk; // 스택으로 사용할 배열을 가리키는 포인터 } IntStack; // 스택 초기화 int Initiali.. 2020. 10. 15.
[알고리즘] Do it 자료구조와 알고리즘 3장 정리 연습문제_Q1 > search 함수를 while문이 아닌 for문을 사용하여 프로그램을 수정하시오. (search함수는 보초법 사용) #include #include int search(int a[], int n, int key) { int i = 0; a[n] = key; for(i=0; i 선형 검색의 스캐닝 과정을 상세하게 표현하는 프로그램을 작성하세요. 참고로 나는 보초법 기반으로 작성하였다. #include #include int search(int a[], int n, int key) { printf(" |"); for(int z=0; z 두개 이상의 복잡도로 구성된 알고리즘의 전체 복잡도는 차원이 더 높은 쪽의 복잡도를 선택한다. 이는 둘이아니라 셋이던 넷이던 그 이상이던 마찬가지다. 다시말.. 2020. 10. 11.
반응형