要点
- 排序总轮数=元素个数-1; 用i表示轮数
- 每轮对比次数=元素个数-排序轮数-1; 用j表示比较次数/数组中的元素
//总共排序轮数为 元素个数-1
for(int i=0;i<9-1;i++)
{
//内层循环为对比
//每轮对比次数=元素个数-排序轮数-1
for(int j=0;j<9-i-1;i++)
{
//如果第一个数字,比第二个数字大,交换两个数字
if(a[j]>a[j+1])
{
int temp=a[j];
a[j]=a[j+1];
a[j+1]=temp;
}
}
}
如果是从1开始的数组
for (int i = 0; i < n-1; i++)//i表征的是轮数没有影响,依旧是要参与排序的元素数-1
{
for (int j = 1; j < n-i; j++)//j要++不是--
{
if (f[j] > f[j + 1])//这里是>则是按着从小到大的顺序排列
{
int temp = f[j];//这里面都是用j而不是i,i只是轮数,j才是数组下标
f[j] = f[j + 1];
f[j + 1] = temp;
int k = s[j];
s[j] = s[j + 1];
s[j + 1] = k;
}
}
}