冒泡排序(一维数组)

/冒泡排序 例如:12 ,7,9,5,8/
void BubbleSort(int *arr,int len)
{
int i = 0;//趟数
int flg = 0;//对冒泡排序的优化
for ( i = 0; i < len-1; i++)
{
int j = 0;
flg = 0;
for ( j= 0; j {
if (arr[j]>arr[j+1])
{
int tmp = arr[j];
arr[j] = arr[j+1];
arr[j + 1] = tmp;
flg = 1;
}
}
if (flg==0)
{
break;
}
}
}
void show(int *arr,int len){
int i = 0;
for ( i = 0; i < len ; i++)
{
printf("%d “,arr[i]);
}
printf(”\n");
}
int main()
{
int arr[] = {12,4,8,18,16,28,26,38};
int len = sizeof(arr) / sizeof(arr[0]);
show(arr, len);
BubbleSort(arr,len);
show(arr,len);
return 0;
}

你可能感兴趣的:(C语言)