一、定义
冒泡排序是较为简单的一种排序方式,它的复杂度为O(n*n),它是一种稳定的排序方式。
它的思想是这样的,设有n个无序数,我们把第一个数和相邻的数进行比较若第一个比较小
(或者大,具体看你是升序还是降序,我们默认按降序)则交换两个数,否则不进行任何改
变,一共进行n-1次来确定出最小的放在最前面这是第一趟,第二趟用第二个数和相邻的数
进行比较,比较n-2次确定第二小的放在第二位,然后重复n-1趟,确定出所有的数的次序。
二、使用
要求:输入10个字符串将其排序,并将排序的结果输出。
void Bubble_Sort()
{
int i = 0,j=0;
char array[10][10];
char tem[10];
printf("please input ten strings\n");//提示输入字符串
for(i=0;i<10;i++)
{
scanf("%s",array[i]);//将输入字符串录入数组
}
for(i=0;i<9;i++)//冒泡排序算法主体
{
for(j=0;j<9-i;j++)
{
if(strcmp(array[j],array[j+1]))
{
strcpy(tem,array[j]);
strcpy(array[j],array[j+1]);
strcpy(array[j+1],tem);
}
}
}
for(i=0;i<10;i++)
{
printf("%s ",array[i]);
}
}
int main()
{
Bubble_Sort();
}
欢迎各位指出不足之处