'재귀호출'에 해당되는 글 1건

  1. 2014.02.14 [집중단기 마지막날] 자료구조 - 재귀호출, 정렬

단기 집중 교육의 5일차 입니다.

교육 마지막날! 전문가 과정이라 어려운 것도 있는데.. 매일 이 과제 저 과제 하느라 밤새다보니

복습도 못하고, 수업때 졸고... 좋은 수업 놓친게 많아서 큰일이네요..

마지막 날 강의도 포스팅 열심히 정리해보겠습니다.


오늘의 시작은 재귀호출입니다.



파일명 : 1.c




파일명 : 2.c

버블 소트

정렬이 끝난 빨간색은 나중에 아직 정렬되지 않은 것들을 정렬할 때에는 빼고 정렬해야한다.

그러므로 소스 코드 중에서 for(j=0; j < len -1 - i; j++) 주의해야한다.


선택 정렬(selection sort)

위에 소스에서 void sort() 부분만 조금만 수정되었습니다.




빠른 정렬(Quick Sort)




파일명 : 3.c

알고리즘 교체 전략



//오름차순과 내림차순 정렬이 중복되어 있는 소스코드
#include  <stdio.h>

#define swap(x, y, T) do { T t = x; x= y; y = t; } while(0)

void ask_sort(int arr[], int len) {
	int i, j;
	for(i=0 ; i<len-1 ; i++){
		for(j=0 ; j<len-1 -i ; j++){
			if(arr[j] > arr[j+1])
				swap(arr[j], arr[j+1], int);
		}
	}
}

void des_sort(int arr[], int len) {
	int i, j;
	for(i=0 ; i<len-1 ; i++){
		for(j=0 ; j<len-1 -i ; j++){
			if(arr[j] < arr[j+1])
				swap(arr[j], arr[j+1], int);
		}
	}
}

void display(int arr[], int len) {
	int i;
	for(i=0;i<len;i++)
		printf("%2d ", arr[i]);
	getchar();
}

void main() {
	int arr[10] = {1,3,5,7,9,2,4,6,8,10};

	display(arr,10);
	ask_sort(arr, 10);
	display(arr,10);
	des_sort(arr, 10);
}

2

파일명 : 4.c

메모리 누수 탐지 프로그램의 구현

5



0.asm


0.cpp


0.exe


0.obj


1.c


2.c


3.asm


3.c


3.exe


3.obj




Posted by 밍쫑
,