冒泡排序算法课件.ppt

冒泡排序算法课件.ppt

ID:53617403

大小:2.77 MB

页数:16页

时间:2020-04-21

冒泡排序算法课件.ppt_第1页
冒泡排序算法课件.ppt_第2页
冒泡排序算法课件.ppt_第3页
冒泡排序算法课件.ppt_第4页
冒泡排序算法课件.ppt_第5页
资源描述:

《冒泡排序算法课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、冒泡排序算法株洲市第二中学信息技术组刘辉琴杜新宇将下面一组无序的数据从小到大排列。{49,38,65,97,76,13,27,49}数据如何存储?活动:——一维数组定义一维数组:intr[8];数组元素为:r[0],r[1],r[2],r[3],r[4],r[5],r[6],r[7]按照计算机的工作方式将下面一组无序的数据从小到大排列。对比原数据经过第一趟排序,实现了什么目的?第一趟排序,一共进行了多少次比较?4927137697653849数据76543210序号49>38,交换位置原数据和序号序号01234567数据4938659776132749第一趟排序的步骤:序号01234

2、567数据3849659776132749序号01234567数据3849659776132749序号01234567数据3849659776132749序号01234567数据3849657697132749序号01234567数据3849657613972749序号01234567数据3849657613279749序号01234567数据384965761327499749<65,保持不变65<97,保持不变97>76,交换位置97>13,交换位置97>27,交换位置为了方便分析,我们把数组r中的元素先用一个表格列出来,如下:97>49,交换位置经过第二趟排序,实现了什么目的?

3、9749271376654938数据76543210序号38<49,保持不变第一趟排序后的数据和序号第二趟排序的步骤:序号01234567数据384965761327499749<65,保持不变65<76,保持不变76>13,交换位置76>27,交换位置76>49,交换位置序号01234567数据3849657613274997序号01234567数据3849657613274997序号01234567数据3849657613274997序号01234567数据3849651376274997序号01234567数据3849651327764997序号01234567数据384965

4、132749769776<97,保持不变序号01234567数据3849651327497697观察原数据与第一、二趟排序后的数据序号01234567数据3849657613274997序号01234567数据3849651327497697序号01234567数据4938659776132749我们预计最多一共要经过多少趟排序呢?序号12345678数据3849132749657697序号12345678数据4938659776132749序号12345678数据3849657613274997序号12345678数据3813274949657697序号12345678数据1327

5、384949657697序号12345678数据1327384949657697序号12345678数据3849651327497697序号12345678数据1327384949657697初始1趟2趟3趟4趟5趟6趟7趟描述算法:试着将我们刚才排序的全过程用算法流程图表示出来。我们把它分成几步来做。t=r[0]r[0]=r[1]r[1]=t开始一.画出比较r[0]与r[1]的算法流程图:第一步做什么?r[0]>r[1]是否如何交换数据?r[1]>r[2]是否t=r[1]r[1]=r[2]r[2]=t…不断的这样画下去要画多少个类似的选择结构?有没有办法让流程图更加简洁呢?分析:继

6、续:if(){}根据流程图完善代码:否是i++结束开始r[0]>r[1]R[1]=R[2]是否t=r[0]r[0]=r[1]r[1]=ti=0r[i]>r[i+1]i<=6t=r[i]r[i]=r[i+1]r[i+1]=t二.画出第一趟排序的算法流程图:用简洁的循环结构进行表示for(;;)if(){}根据流程图完善程序:是否i++结束开始R[1]>R[2]R[1]=R[2]是否t=R[2]R[1]=R[2]R[2]=ti=0r[i]>r[i+1]t=r[i]r[i]=r[i+1]r[i+1]=ti<=5分析:后面的排序只要按照这种方法不断进行就行了。按照这种画法第二趟、第三趟、第四

7、趟排序的流程图怎样画?怎样把整个冒泡排序的流程图画出来?那么同样的结构要进行多少次呢?有没有办法让流程图更加简洁呢?三:画整个冒泡排序的流程图。开始结束j<=6j=0是j++否i<=?是i=0i++是否r[i]>r[i+1]t=r[i]r[i]=r[i+1]r[i+1]=t分析:这是一个两重循环结构。否结束j<=6输出数据i++i<=6-jj++t=r[i]r[i]=r[i+1]r[i+1]=tr[i]>r[i+1]是否j=0i=0开始输入数据main()

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。