
-
1
-
2
-
3
-
4
-
5
-
6
-
7
-
8
-
9
-
10
-
11
-
12
-
13
-
14
-
15
-
16
-
17
-
18
-
19
-
20
-
21
-
22
-
23
-
24
-
25
-
26
-
27
-
28
-
29
-
30
-
31
-
32
-
33
-
34
-
35
-
36
-
37
-
38
-
39


본문내용
;
gotoxy(count,1);
printf("%d",t=t-10);
gotoxy(count++,5);
putchar(25);
for(i=0; i<8; i++)
{
for(j=0; j<4; j++)
{
gotoxy(count++,5);
putchar(5);
}
gotoxy(count,1);
printf("%d",t=t-10);
gotoxy(count++,5);
putchar(25);
}
gotoxy(count++,5);
putchar(5);
gotoxy(count++,5);
putchar(5);
gotoxy(count++,5);
putchar(5);
gotoxy(count++,5);
putchar(5);
gotoxy(count,1);
printf("%d",t=t-10);
gotoxy(count++,5);
putchar(3);
count=6;
t=0;
for(i=0; i< 10; i++)
{
for(j=0; j<5; j++)
{
gotoxy(51,count++);
putchar(6);
}
gotoxy(52,count);
printf("%d",t=t+10);
gotoxy(51,count++);
putchar(21);
}
gotoxy(1,67);
putchar(14);
puts(": insert");
gotoxy(2,67);
putchar(15);
puts(" : heap");
gotoxy(3,67);
putchar(16);
puts(" : merge");
gotoxy(4,67);
putchar(17);
puts(" : quick");
}
void insert_sort_time(int nArray[])
{
DWORD start,end,sum=0;
int h,i,j,k=1;
int *insert_data;
int x=50,y=11,a;
for(h=0; h<10; h++)
{
insert_data = (int *)malloc(sizeof(int)*nArray[h]);
for(i=0; i<10; i++)
{
for(j=nArray[h]-1 ; j>=1; j--)
//최악의 시간을 구하기 위해 역순정렬데이터 만듦
insert_data[j]=k++;
start = GetTickCount();//소트 처음 시작 시간 구함
insert_sort(insert_data,nArray[h]);
end = GetTickCount();//소트 끝난 시간 구함
end = end-start;//소트한 시간 구함
sum += end;//소트시간 누적
}
a= sum/10;//누적 시간을 실행 횟수로 나누어 줌
sum=0;
a= a/2;
if( a < 50)
{
gotoxy(50-a,y);
putchar(14);
y += 6;
}
//printf("%d\n",a);
free(insert_data);
}
}
void heap_sort_time(int nArray[])
{
DWORD start,end,sum=0;
int h,i,j;
int *insert_data;
int x=50,y=11,a;
for(h=0; h<10; h++)
{
insert_data = (int *)malloc(sizeof(int)*nArray[h]);
for(i=0; i<10; i++)
{
for(j=nArray[h]-1 ; j>=1; j--)
insert_data[j]=j;
permute(insert_data,nArray[h]);//최악의 데이터를 만들기 위하여 임의순열 생성기 이용
start = GetTickCount();
heap_sort(insert_data,nArray[h]-1);
end = GetTickCount();
end = end-start;
sum += end;
}
a= sum/10;
if( a < 50)
{
gotoxy(50-a,y);
putchar(15);
y += 6;
}
//printf("%d\n",a);
free(insert_data);
}
}
void merge_sort_time(int nArray[])
{
DWORD start,end,sum=0;
int h,i,j,k=1;
int *insert_data;
int x=50,y=11,a;
for(h=0; h<10; h++)
{
insert_data = (int *)malloc(sizeof(int)*nArray[h]);
for(i=0; i<10; i++)
{
for(j=nArray[h]-1 ; j>=1; j--)
//최악의 시간을 구하기 위해 역순정렬데이터 만듦
insert_data[j]=k++;
start = GetTickCount();//소트 처음 시작 시간 구함
merge_sort(insert_data,nArray[h]);
end = GetTickCount();//소트 끝난 시간 구함
end = end-start;//소트한 시간 구함
sum += end;//소트시간 누적
}
a= sum/10;//누적 시간을 실행 횟수로 나누어 줌
sum=0;
if( a < 50)
{
gotoxy(50-a,y);
putchar(16);
y += 6;
}
//printf("%d\n",a);
free(insert_data);
}
}
void quick_sort_time(int nArray[])
{
DWORD start,end,sum=0;
int h,i,j;
int *insert_data;
int x=50,y=11,a;
for(h=0; h<10; h++)
{
insert_data = (int *)malloc(sizeof(int)*nArray[h]);
for(i=0; i<10; i++)
{
for(j=1 ; j
insert_data[j]=j;
permute(insert_data,nArray[h]);//최악의 데이터를 만들기 위하여 임의순열생성기 이용
start = GetTickCount();
quick_sort(insert_data,nArray[h]);
end = GetTickCount();
end = end-start;
sum += end;
}
a= sum/10;
sum=0;
if( a < 50)
{
gotoxy(50-a,y);
putchar(17);
y += 6;
}
//printf("%d\n",a);
free(insert_data);
}
}
gotoxy(count,1);
printf("%d",t=t-10);
gotoxy(count++,5);
putchar(25);
for(i=0; i<8; i++)
{
for(j=0; j<4; j++)
{
gotoxy(count++,5);
putchar(5);
}
gotoxy(count,1);
printf("%d",t=t-10);
gotoxy(count++,5);
putchar(25);
}
gotoxy(count++,5);
putchar(5);
gotoxy(count++,5);
putchar(5);
gotoxy(count++,5);
putchar(5);
gotoxy(count++,5);
putchar(5);
gotoxy(count,1);
printf("%d",t=t-10);
gotoxy(count++,5);
putchar(3);
count=6;
t=0;
for(i=0; i< 10; i++)
{
for(j=0; j<5; j++)
{
gotoxy(51,count++);
putchar(6);
}
gotoxy(52,count);
printf("%d",t=t+10);
gotoxy(51,count++);
putchar(21);
}
gotoxy(1,67);
putchar(14);
puts(": insert");
gotoxy(2,67);
putchar(15);
puts(" : heap");
gotoxy(3,67);
putchar(16);
puts(" : merge");
gotoxy(4,67);
putchar(17);
puts(" : quick");
}
void insert_sort_time(int nArray[])
{
DWORD start,end,sum=0;
int h,i,j,k=1;
int *insert_data;
int x=50,y=11,a;
for(h=0; h<10; h++)
{
insert_data = (int *)malloc(sizeof(int)*nArray[h]);
for(i=0; i<10; i++)
{
for(j=nArray[h]-1 ; j>=1; j--)
//최악의 시간을 구하기 위해 역순정렬데이터 만듦
insert_data[j]=k++;
start = GetTickCount();//소트 처음 시작 시간 구함
insert_sort(insert_data,nArray[h]);
end = GetTickCount();//소트 끝난 시간 구함
end = end-start;//소트한 시간 구함
sum += end;//소트시간 누적
}
a= sum/10;//누적 시간을 실행 횟수로 나누어 줌
sum=0;
a= a/2;
if( a < 50)
{
gotoxy(50-a,y);
putchar(14);
y += 6;
}
//printf("%d\n",a);
free(insert_data);
}
}
void heap_sort_time(int nArray[])
{
DWORD start,end,sum=0;
int h,i,j;
int *insert_data;
int x=50,y=11,a;
for(h=0; h<10; h++)
{
insert_data = (int *)malloc(sizeof(int)*nArray[h]);
for(i=0; i<10; i++)
{
for(j=nArray[h]-1 ; j>=1; j--)
insert_data[j]=j;
permute(insert_data,nArray[h]);//최악의 데이터를 만들기 위하여 임의순열 생성기 이용
start = GetTickCount();
heap_sort(insert_data,nArray[h]-1);
end = GetTickCount();
end = end-start;
sum += end;
}
a= sum/10;
if( a < 50)
{
gotoxy(50-a,y);
putchar(15);
y += 6;
}
//printf("%d\n",a);
free(insert_data);
}
}
void merge_sort_time(int nArray[])
{
DWORD start,end,sum=0;
int h,i,j,k=1;
int *insert_data;
int x=50,y=11,a;
for(h=0; h<10; h++)
{
insert_data = (int *)malloc(sizeof(int)*nArray[h]);
for(i=0; i<10; i++)
{
for(j=nArray[h]-1 ; j>=1; j--)
//최악의 시간을 구하기 위해 역순정렬데이터 만듦
insert_data[j]=k++;
start = GetTickCount();//소트 처음 시작 시간 구함
merge_sort(insert_data,nArray[h]);
end = GetTickCount();//소트 끝난 시간 구함
end = end-start;//소트한 시간 구함
sum += end;//소트시간 누적
}
a= sum/10;//누적 시간을 실행 횟수로 나누어 줌
sum=0;
if( a < 50)
{
gotoxy(50-a,y);
putchar(16);
y += 6;
}
//printf("%d\n",a);
free(insert_data);
}
}
void quick_sort_time(int nArray[])
{
DWORD start,end,sum=0;
int h,i,j;
int *insert_data;
int x=50,y=11,a;
for(h=0; h<10; h++)
{
insert_data = (int *)malloc(sizeof(int)*nArray[h]);
for(i=0; i<10; i++)
{
for(j=1 ; j
permute(insert_data,nArray[h]);//최악의 데이터를 만들기 위하여 임의순열생성기 이용
start = GetTickCount();
quick_sort(insert_data,nArray[h]);
end = GetTickCount();
end = end-start;
sum += end;
}
a= sum/10;
sum=0;
if( a < 50)
{
gotoxy(50-a,y);
putchar(17);
y += 6;
}
//printf("%d\n",a);
free(insert_data);
}
}
소개글