基本信息
文件名称:选修课Office高级应用:冒泡法排序算法详解与实践.pptx
文件大小:259.29 KB
总页数:5 页
更新时间:2026-03-20
总字数:约小于1千字
文档摘要
冒泡法排序(基于C语言)
主讲人:小白
冒泡法排序(升序)算法思路
将相邻两个数比较,小的换到前面
步骤如下:
有n个数(存放在数组a[0]~a[n-1]中),第1轮将每相邻两个数比较,小的换到前面,经过n-1次两两相邻比较后,最大数已“沉底”,小数上升“浮起”。
除去“沉底”的最大数,第2轮对余下的n-1个数按上法比较,经过n-2次两两相邻比较后得次大的数。
以此类推,n个数经n-1轮比较,排序完毕。
冒泡法排序过程(以5个数为例)
原始数据
第1轮冒泡
第2轮冒泡
第3轮冒泡
第4轮冒泡
7
2
9
1
6
a[0]
a[1]
a[2]
a[3]
a[4]
9
7
9
6
7
9
7
2
9
1
6
2
7
1
6
2
1
6
1
2
代码实现
for(i=0;i4;i++)
for(j=0;j4-i;j++)
if(a[j]a[j+1])
{t=a[j];
a[j]=a[j+1];
a[j+1]=t;
}
5个数需要经历4轮选择(i=0~3)
每轮需要经过4-i次比较
若前面的数比后面的大则需要交换,把大的换到后面去
iN-1;
iN-i-1;
课程名称:C语言程序设计
课件内容:冒泡法排序
主讲人:小白
网站:
E-mail:
联