cs
#include<stdio.h>
int buble(int arr[],int size)
{
for(int i=0;i<size-1;i++)
{
for(int j=0;j<size-1-i;j++)
{
if(arr[j]>arr[j+1])
{
int temp=0;
temp=arr[j];
arr[j]=arr[j+1];
arr[j+1]=temp;
}
}
}
}
int main()
{
int arr[]={2,1,3,6,5,8,4};
int size=sizeof(arr)/sizeof(arr[0]);
for(int k=0;k<size;k++)
{
printf("%d ",arr[k]);
}
buble(arr,size);
printf("\r\nsize:%d\r\n",size);
for(int p=0;p<size;p++)
{
printf("%d ",arr[p]);
}
}
将数据进行每一轮筛选,第一轮最大的数据一定在最右边,则需要的轮数=数据数-1
以下为结果:
