冒泡排序
a.
冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法。它重复地走访过要排序的元素列,依次比较两个相邻的元素,如果他们的顺序(如从大到小、首字母从A到Z)错误就把他们交换过来。走访元素的工作是重复地进行直到没有相邻元素需要交换,也就是说该元素已经排序完成。 这个算法的名字由来是因为越大的元素会经由交换慢慢“浮”到数列的顶端(升序或降序排列),就如同碳酸饮料中二氧化碳的气泡最终会上浮到顶端一样,故名“冒泡排序”。冒泡排序是一种稳定排序算法。
b.
平均时间复杂度:O(n^2)
c.
冒泡排序程序流程图:
d.
实现:(升序)
1.比较相邻两个数的大小,如果前面的数大于后面的数,就交换他们
2.重复步骤1,直到数组全部升序排列为止
e.
C语言:
#include<stdio.h>
void main(){
int a=1,n[10];
printf("请输入10个数,以逗号隔开:");
scanf("%d,%d,%d,%d,%d,%d,%d,%d,%d,%d",&n[0],&n[1],&n[2],&n[3],&n[4],&n[5],&n[6],&n[7],&n[8],&n[9] );
for(int i=0;i<=9;i++){
for(int j=0;j<=9-i;j++){
if(n[i]<n[j]){
a=n[i];
n[i]=n[j];
n[j]=a;
}
}
}
for(i=0;i<=9;i++){
printf("%d ",n[i]);
}
printf("\n");
}
运行