0
거품을 숫자로 정렬하고 계속 세분화 오류가 발생하는 함수를 만들려고합니다. 어떠한 제안? sa
, sb
에 액세스하는버블 정렬 번호
void bubblesort(struct Record *ptr, int records, int (*fcomp)(const void *, const void *))
{
long c, d, i;
struct Record *sa, *sb, sc;
for (c = 0 ; c < (records - 1); c++)
{
for (d = 0 ; d < records - c - 1; d++)
{
for(i = 0; i < records - 1; i++)
{
if (fcomp(ptr+i, ptr+i+1) <= 0)
{
/* Swapping */
sc = sa[d];
sa[d] = sb[d+1];
sb[d+1] = sc;
}
}
}
}
}
"모든 제안"- bubblesort를 사용하지 마십시오. –
디버거에서 실행해야합니다. 이렇게하면 더 많은 정보를 얻을 수 있습니다. –
@MitchWheat : 거의 정렬 된 집합을 다룰 때, bubblesort는 대부분의 알고리즘을 능가합니다. – Fred