스왑에 관해서 궁금한게 잇어서요
행운아
스왑에 관해서 궁금한게 잇어서요void swap(int a[], int i, int j)
{
int t = a[i]; a[i] = a[j]; a[j] = t;
}질문 내용 :
void swap(int a[], int i, int j)
{
int t = a[i]; a[i] = a[j]; a[j] = t;
}
이게 인트 티에 있는걸 배열 아이에 넣고 배열 아이에 있는걸 배열 제이에 넣고 배열 제이에 있는걸 티에 넣는다는 말 아닌가요?
그럼 결국 제자리 아닌가요??????? ㅜㅜ;;;
예제 보고 프로그램 돌렸는데
#include stdio.h
#include time.h
#include stdlib.h
#define n 10000
#define true 1
#define false 0
void swap(int a[], int i, int j)
{
int t = a[i]; a[i] = a[j]; a[j] = t;
}
void checksort(int a[], int n)
{
int i, sorted;
sorted = true;
for (i=1; in; i++) {
if(a[i] a[i+1]) sorted = false;
if(!sorted)break;
}
if(sorted) printf(정렬완료. \n);
else printf(정렬 오류 발생.\n);
}
void selectionsort(int a[], int n)
{
int i, j, min;
for(i=1; in; i++) {
min = i;
for(j=i+1; j=n; j++)
if(a[j] a[min]) min=j;
swap(a, min, i);
}
}
main()
{
int i, a[n+1];
double start_time;
srand(time(null));
for(i=1; i=n; i++) a[i] = rand();
start_time = clock();
selectionsort(a,n);
printf(선택 정렬의 실행 시간 (n=%d) : %.0f\n, n, clock() - start_time);
checksort(a,n);
}
잘 돌아가던데.................................
스왑 무슨뜻인지 좀 가르쳐주세요 ^^;;
-
봄시내
아. 그런거예요? 감사합니다. ^^
-
좋아해
아무래도, 그냥 두 개의 값을 바꾸는 것 아닐까요?
-
마디
그리고 셀랙션소트에 보면 swap(a,min,j);가잇는데 이건 무슨뜻인지 좀 가르쳐 주세요 ㅠㅠ