[컴퓨터工學(공학) ] 3-way 외부 합병 정렬
페이지 정보
작성일 20-11-23 13:44
본문
Download : [컴퓨터공학] 3-way 외부 합병 정렬.hwp
버퍼를 Sorting 하는 방식은 개발자(developer) 임의로 정해서 구현한다.
void flush(FILE *out, int buf)
버퍼를 출력하고 비우는 함수
int isfull(int buf)
버퍼가 가득 찼는지 체크하는 함수(가득차면 return 1,…(drop)
[컴퓨터工學(공학) ] 3-way 외부 합병 정렬
다.
3-way 외부 합병정렬을 구현하는데, 버퍼의 크기는 버퍼1, 2, 3은 각각 1KBytes이고, 출력에 쓰이는 버퍼(out)도 1KBytes이다.
int partition(int list, int left, int right)
버퍼(list)를 두 부분으로 파티션 하는 함수. quick_sort()에서 사용된다
void quick_sort(int list, int left, int right)
버퍼(list)에 저장된 키 값을 퀵정렬(quick-sort)로 정렬하는 함수.
int compare(int a, int b, int c)
a, b, c 중에 최솟값을 구하는 함수.
int oddeven(int x)
x가 홀수인지 짝수인지 구별하는 함수(짝수 : return 0, 홀수 : return 1)
void init(int buf)
버퍼를 초기화한다.
2. 프로젝트 구현
다음은 이번 프로젝트 구현에 있어서 임의로 정이한 함수에 대한 설명(說明)이다. 출력버퍼가 가득 차면 임시파일(temp1.txt, temp2.txt)에 binary 형태로 Write 하고, 버퍼를 비운 후에 다시 채워가면서 Merge Sorting 하는 프로그램(program]) 을 구현하는 것이다.
Download : [컴퓨터공학] 3-way 외부 합병 정렬.hwp( 43 )
[컴퓨터공학] 3-way 외부 합병 정렬 , [컴퓨터공학] 3-way 외부 합병 정렬공학기술레포트 , [컴퓨터공학] 3-way 외부 합병 정렬
레포트/공학기술
[컴퓨터工學(공학) ] 3-way 외부 합병 정렬
설명
[컴퓨터공학],3-way,외부,합병,정렬,공학기술,레포트
순서
![[컴퓨터공학]%203-way%20외부%20합병%20정렬_hwp_01.gif](http://www.allreport.co.kr/View/%5B%EC%BB%B4%ED%93%A8%ED%84%B0%EA%B3%B5%ED%95%99%5D%203-way%20%EC%99%B8%EB%B6%80%20%ED%95%A9%EB%B3%91%20%EC%A0%95%EB%A0%AC_hwp_01.gif)
![[컴퓨터공학]%203-way%20외부%20합병%20정렬_hwp_02.gif](http://www.allreport.co.kr/View/%5B%EC%BB%B4%ED%93%A8%ED%84%B0%EA%B3%B5%ED%95%99%5D%203-way%20%EC%99%B8%EB%B6%80%20%ED%95%A9%EB%B3%91%20%EC%A0%95%EB%A0%AC_hwp_02.gif)
![[컴퓨터공학]%203-way%20외부%20합병%20정렬_hwp_03.gif](http://www.allreport.co.kr/View/%5B%EC%BB%B4%ED%93%A8%ED%84%B0%EA%B3%B5%ED%95%99%5D%203-way%20%EC%99%B8%EB%B6%80%20%ED%95%A9%EB%B3%91%20%EC%A0%95%EB%A0%AC_hwp_03.gif)
![[컴퓨터공학]%203-way%20외부%20합병%20정렬_hwp_04.gif](http://www.allreport.co.kr/View/%5B%EC%BB%B4%ED%93%A8%ED%84%B0%EA%B3%B5%ED%95%99%5D%203-way%20%EC%99%B8%EB%B6%80%20%ED%95%A9%EB%B3%91%20%EC%A0%95%EB%A0%AC_hwp_04.gif)
![[컴퓨터공학]%203-way%20외부%20합병%20정렬_hwp_05.gif](http://www.allreport.co.kr/View/%5B%EC%BB%B4%ED%93%A8%ED%84%B0%EA%B3%B5%ED%95%99%5D%203-way%20%EC%99%B8%EB%B6%80%20%ED%95%A9%EB%B3%91%20%EC%A0%95%EB%A0%AC_hwp_05.gif)
3-way 외부 합병 정렬
1. 프로젝트 설명(說明)
순차파일(binary형태)로 주어지는 데이터 파일(.dat)에서 킷값에 해당 하는 부분을 가지고 정렬을 실행한다. Merge Sorting은 각 단계(step)별로 수행된다
Merge Sorting 되는 방식은 아래 그림과 같다. 즉 버퍼의 내용을 -1로 채운다.