冒泡排序 θ(n^2)
void bubble_sort(int a[], int n)
{
int i, j;
for (i = 0; i < n - 1; i++)
for (j = 0; j < n - 1 - i; j++) //外层循环每循环一次就能确定出一个泡泡(最大或者最小),所以内层循环不用再计算已经排好的部分
{
if (a[j] > a[j+1]) {
a[j] = a[j]^a[j+1];
a[j+1] = a[j]^a[j+1];
a[j] = a[j]^a[j+1];
}
}
}
网友评论