有没有人可以告诉我这种排序方法的名字
//对一组数组从数组0开始每次两两比较大小,n个数,一个循环比较n/2或n/2-1次。接着下一次循环从数组1开始两两比较,一个循环比较n/2-1或n/2次,这样交替比较,最多n次循环就可以排列好。
//若代码有错误,希望提示。
#include<stdio.h>
void sorted(int a[100],int b)
{
int d;
int k = 0;
for (int j = 0; j < b; j++)
{
if (k % 2 == 0)
{
for (int i = 0; i <= b - (b % 2) - 1;)
{
if (a[i] >= a[i + 1])
{
d = a[i];
a[i] = a[i + 1];
a[i + 1] = d;
}
i += 2;
}
}
else if (k % 2 == 1)
{
for (int x = 1; x <= b - 2;)
{
if (a[x] >= a[x + 1])
{
d = a[x];
a[x] = a[x + 1];
a[x + 1] = d;
}
x += 2;
}
}
k++;
}
for (int i = 0; i < b; i++)
{
printf("%d ", a[i]);
}
}
int main()
{
int int_a[100], intb;
scanf("%d", &intb);
for (int i = 0; i < intb; i++)
{
scanf("%d", &int_a[i]);
}
sorted(int_a,intb);
}