回复 楼主 御坂美琴
int bubblesort_t(int* arr, int len){ int *p=arr;
int *n=arr;
for ( arr; arr<p+len;arr++,n++)
{ n=arr;
for (n; n < p+len;n++)
{
if (*arr<=*(n+1))
{
SWAP(*arr, *(n+1)); // 对不符合比较结果的,使其交换,以符合比较的方式
}
}
}
return 0;
}
说明:让第一个元素和所有的元素比较,得到最大的;然后让第二个和它后的所有元素比较,得到第二大的元素;依次下去,便得到从大到小的排列顺序。这样的算法更容易理解。
程序没有调试过,希望版主以及同仁,探讨一下它的对与错。如有不合适请指出。
[ 本帖最后由 stone_yang 于 2010-10-20 19:29 编辑 ]