1. 프로그램 소스
합병정렬(링크를 사용하는) : lec4-5, 퀵정렬(순환버전) : lec5-1 사용
CompareMeasure.java
package exercise_2;
public class CompareMeasure {
public void mergeSort(int n){ // 합병정렬 method (lec 4-5)
int arrSize = n ; // 배열의 크기
int arr[] = new int[arrSize+1];
for(int i=1; i[= arrSize; i++)
arr[i] = (int)(java.lang.Math.random()*(n-1)); //테스트 데이터 생성
MergeSortClass m = new MergeSortClass(arr, arrSize) ; // 합병정렬 클래스를 생성
arr = m.MergeSortCall2(); // 합병정렬을 호출
}
public void QuickSort(int n){ // 퀵정렬 method 순환버전 (lec 5-1)
int arrSize = n ; // 배열의 크기
int arr[] = new int[arrSize+2];
arr[arrSize+1] = Integer.MAX_VALUE;
/*중추키가 가장 큰 경우 배열범위를 벗어나게 되는데
그 현상을 방지하기 위해 맨 마지막에 더미값을 넣어둠
*/
for(int i=1; i[= arrSize; i++)
arr[i] = (int)(java.lang.Math.random()*(n-1)); //테스트 데이터 생성
// 중간값 규칙
int temp=0;
if(arr[arrSize/2][arr[arrSize-1]){
if(arr[1][arr[arrSize/2]){ //arr[arrSize/2] 이 중간값일때
....
[화일구조] 3원 다단계 합병 알고리즘 구현 3원 다단계 합병 알고리즘 구현
담당교수
:
학과
:
학번
:
성명
:
1. 숙제 설명
난수 생성기(random number generator)를 이용하여 정수(0[=정수 [= 10000) 1000개를 생성하고 레코드 하나에 정수 하나를 ..
[컴퓨터공학] 3-way 외부 합병 정렬 3-way 외부 합병 정렬
1. 프로젝트 설명
순차파일(binary형태)로 주어지는 데이터 파일(.dat)에서 킷값에 해당 하는 부분을 가지고 정렬을 실행한다.
3-way 외부 합병정렬을 구현하는데, 버퍼의 크기는 버퍼1, 2..