Develop
2003.04.23 11:05
[c] 단기과정[01/24] 정렬 알고리즘
조회 수 6986 댓글 0
Merge Sort..
-------------------------------------------------------------------
#include<stdio.h>
#include<malloc.h>
#include<string.h>
void mergesort(char a[], int l, int r){
int i, j, k, m;
char *b;
b = (char *)malloc(r+1);
if(r>l){
m = (r+l)/2;
mergesort(a, l, m);
mergesort(a, m+1, r);
for(i=m+1; i>l; i--) b[i-1] = a[i-1];
for(j=m; j<r; j++) b[r+m-j] = a[j+1];
for(k=l; k<=r; k++) a[k] = (b[i]<b[j]) ? b[i++] : b[j--];
}
}
void main(){
char chr[]="asortingexmple";
mergesort(chr, 0, strlen(chr)-1);
printf("sort : %sn", chr);
}
-------------------------------------------------------------------
-
[c] 시간 관련 함수 설명과 예제..
-
[c] 스토리지 클래스(변수)
-
[c] 포인터와 함수포인터에 대해..
-
[c] 구조체의 설명과 예제..
-
[c] 프로세스간의 통신(파이프)
-
[jsp] 정적/동적(차트생성) 이미지 전달
-
[c] OpenGL 직사각형(2D) 크기 확대/축소
-
[c++] 더블 링크리스트(linked list) 학습용 초간단 단어장
-
[c] 구조체/파일 입출력 프로그램
-
[c] 컴파일러 선행처리기 따라하기..
-
[c] 싱글, 더블 링크리스트(linked list)로 만든 예제..
-
[c] fgets() 함수 사용하기..