여러 솔팅알고리즘에서 비교 횟수를 출력하고싶은데요..
바나나
2023.06.24
void quick_sort(int list[],int index[],int left, int right) {
int pivot, i, j;
if(leftright) {
i = left;
j = right + 1;
pivot = list[left];
do{
do
i++;
while(list[i] pivot);
do
j--;
while(list[j] pivot);
if(i j) {
swap(&list[i], &list[j]);
swap(&index[i], &index[j]);
}
} while(i j);
swap(&list[left], &list[j]);
swap(&index[left], &index[j]); quick_sort(list,index,left,j-1);
quick_sort(list,index,j+1, right);
}
}기본적인 퀵솔트인데요, 2차원 배열이 싫어서 1차원 배열 두개를 써서 숫자와 인덱스를 변경했어요,
그런데, 여기서 몇번 비교했는지를 뽑아내야되는데,count 변수를 써서 리턴받고싶은데 도대체 어느위치에 써 넣어야 할지 모르겟어요 ㅠ
이게 제귀함수라서, count 변수가 계속 일정하게 유지될지도 의문이고, 잘안되네요 ㅠㅠ
도와주세요 ㅠ
-
텃골돌샘터 2023-06-24
전역변수로 써보세요
그리고 비교하는 횟수보다 바꿔준횟수를 저장하는게 나을것 같은데요..?