动画演示C语言冒泡排序算法精品PPT课件(绝对精品)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

256789
语言程序设计——排序算法
情景导入 冒泡排序 编写程序 调试程序
算法思想
如何实现两个数据互换呢?
动画演示 提出问题
1
2
填流程图
第三变量 1
语言程序设计——排序算法
情景导入 冒泡排序 编写程序 调试程序
算法思想 动画演示 提出问题 填流程图
输入6个数给a[0]到a[5]
j从( 0 )变到( 4 )共执行(5 )次循环
语言程序设计——排序算法
情景导入 冒泡排序 编写程序 调试程序
谢谢
进行(5-j)次比较
a[i]>a[i+1]


( a[i]a[i+1] )
输出a[0]到a[5]
语言程序设计——排序算法
情景导入 冒泡排序 编写程序 调试程序
#include<stdio.h> void main() {
int i,j,temp; int a[6]; printf("请输入6个数;\n"); for(i=0;i<=5;i++)
********学校
冒泡排序算法
——选自《C语言程序设计课程》
语言程序设计——排序算法
情景导入 冒泡排序 编写程序 调试程序
仔细观察四个从圆左柱到的右排依队次过两程两,比分较析高这低四,个如圆果柱左是侧如的何圆进柱行比排右队侧的 的圆柱高,那么交换位置,直至从低到高排好队。
下开结一始论步
语言程序设计——排序算法
情景导入 冒泡排序 编写程序 调试程序
算法思想 动画演示 提出问题 填流程图
先将第一个元素和第二个元素进行比较, 若为逆序,则交换;接着比较第二个和第三 个元素;依此类推,直到第N-1个元素和第N 个元素进行比较、交换为止。如此经过一趟 排序,使最大的元素被安置到最后一个元素 的位置上。然后,对前N-1个元素进行同样的 操作,使次大的元素被安置到第N-1个位置上。 重复以上过程,直到没有元素需要交换为止。
点击开始
语言程序设计——排序算法
情景导入 冒泡排序 编写程序 调试程序
算法思想 动画演示
第二趟比较
第二趟比较结束找到第二大数8,两两比较4次。
提出问题 填流程图
5 <7 >6 <8 >2 9
点击开始
语言程序设计——排序算法
情景导入 冒泡排序 编写程序 调试程序
算法思想 动画演示
第三趟比较
第三趟比较结束找到第三大数7,两两比较3次。
{ scanf("%d",&a[i]);
} for(j=0;j<=4;j++)
{ for(i=0;i<5-j;i++) {
if(a[i]>a[i+1]) { temp=a[i]; a[i]=a[i+1]; a[i+1]=temp; } }
} printf("排序后的数字是:"); for(i=0;i<=5;i++) printf("%3d",a[i]); }
语言程序设计——排序算法
情景导入 冒泡排序 编写程序 调试程序
算法思想 动画演示 提出问题 填流程图
初始数据
587692
语言程序设计——排序算法
情景导入 冒泡排序 编写程序 调试程序
算法思想 动画演示
第一趟比较
第一趟比较结束找到最大数9,两两比较5次。
< > > < > 提出问题
填流程图
5 8 78 6 9 2
提出问题 填流程图
5 <6 <7 >2
89Biblioteka Baidu
点击开始
语言程序设计——排序算法
情景导入 冒泡排序 编写程序 调试程序
算法思想 动画演示
第四趟比较
第四趟比较结束找到第四大数6,两两比较2次。
提出问题 填流程图
5 <6 >2
7 89
点击开始
语言程序设计——排序算法
情景导入 冒泡排序 编写程序 调试程序
算法思想 动画演示
第五趟比较
第五趟比较结束找到第五大数5,两两比较1次。
提出问题 填流程图
5 >2
67 89
点击开始
语言程序设计——排序算法
情景导入 冒泡排序 编写程序 调试程序
算法思想 动画演示 提出问题 填流程图
结论
6个数据排序,需要比较5趟,每趟比 较的次数分别是5、4、3、2、1次。
那么N个数据排序,又该比较几趟,每 趟比较几次呢?
相关文档
最新文档