冒泡法试错

若如初见. 提交于 2020-12-22 18:33:49

void bubble_sort(int arr1[],int sz)
{ int flag = 1;//优化的地方在这里,可以先判断后在进行
int i = 0;
int j = 0;
int tmp;
for (j = 0; j < sz - 1; j++)
{
for (i = 0; i < sz - 1 -j;i++)//每走一趟,判断两个数的次数就减少一次``
{
if (arr1[i]>arr1[i + 1])
{
tmp = arr1[i];
arr1[i ] = arr1[i+1];
arr1[i + 1] = tmp;
flag = 0;
}
if (flag == 1)
{
break;
}
}
}
}
void main()
{
int i;
int arr1[] = { 9, 8, 7, 6, 5, 4, 3, 2, 1, 0 };
int sz = sizeof(arr1) / sizeof(arr1[0]);
bubble_sort(arr1,sz);//这个时候有得删去[],表示的是整个数组
for (i = 0; i < sz; i++)
{
printf("%d", arr1[i]);
}
}
































标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!