这个是不是错了?
我在百度上搜几种排序,首页出来的这个冒泡让我很是头疼,这个函数对不?
void bubble(int *a, int n)
{
int i, j, temp;
for(i=0; i<n-1; ++i)
for(j=i+1; j<n; j++)
if (a>a[j]) {
temp = a;
a = a[j];
a[j] = temp;
}
}
这个a让我很是头疼,对吧? 不对吧?[/color]
[解决办法]
void bubble_sort(int* arr, int n){ int key; for(int i = 0; i < n; ++i) { for(int j = 1; j < n - i; ++j) { if(*(arr + j) < *(arr + j - 1)) { key = *(arr + j); *(arr + j) = *(arr + j - 1); *(arr + j - 1) = key; } } }}