冒泡排序与选择排序的比较_第1页
冒泡排序与选择排序的比较_第2页
冒泡排序与选择排序的比较_第3页
冒泡排序与选择排序的比较_第4页
冒泡排序与选择排序的比较_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、冒泡排序冒泡排序n个数排序,需要进行个数排序,需要进行n-1趟冒泡趟冒泡第一页,共17页。1234a0a1a2a32134第一次比较第一次比较第二次比较第二次比较2314a0、a1、 a2、 a3分别两两比较并交分别两两比较并交换,使小数沉底到换,使小数沉底到a3第三次比较第三次比较2341第一趟冒泡结果第一趟冒泡结果第二页,共17页。1234a0a1a2a3比较前:比较前:第一趟冒泡,小数沉底到第一趟冒泡,小数沉底到a32341第一趟冒泡结果第一趟冒泡结果for(i=0;i+;i3)if(aiai+1) temp=ai; ai=ai+1; ai+1=temp;实现一趟冒泡的代码为:实现一趟冒

2、泡的代码为:第三页,共17页。2341a0a1a2a33241第一次比较第一次比较第二次比较第二次比较a0、a1、 a2 分别两两比较交换,小分别两两比较交换,小数沉底到数沉底到a23421第二趟冒泡结果第二趟冒泡结果第四页,共17页。2341a0a1a2a3比较前:比较前:第二趟冒泡,小数沉底到第二趟冒泡,小数沉底到a23421第二趟冒泡结果第二趟冒泡结果for(i=0;i+;i2)if(aiai+1) temp=ai; ai=ai+1; ai+1=temp;实现第二趟冒泡的代码为:实现第二趟冒泡的代码为:第五页,共17页。3421a0a1a2a3比较前:比较前:a0、a1两两比较并交换,小

3、数沉底到两两比较并交换,小数沉底到a14321第三趟冒泡结果第三趟冒泡结果第六页,共17页。3421a0a1a2a3比较前:比较前:第三趟冒泡,小数沉底到第三趟冒泡,小数沉底到a14321第三趟比较结果第三趟比较结果for(i=0;i+;i1)if(aiai+1) temp=ai; ai=ai+1; ai+1=temp;实现第三趟冒泡的代码为:实现第三趟冒泡的代码为:第七页,共17页。for(j=0;j3;j+)1234a0a1a2a3冒泡排序前:冒泡排序前:冒泡排序实现由小到大排序代码冒泡排序实现由小到大排序代码4321冒泡排序后:冒泡排序后:for(i=0;i+;i3-j)if(aiai+

4、1) temp=ai; ai=ai+1; ai+1=temp;4个数排序,需要执个数排序,需要执行行3趟冒泡。趟冒泡。每一趟冒泡,需要每一趟冒泡,需要数据进行两两比较数据进行两两比较并交换。并交换。第八页,共17页。选择排序选择排序n个数排序,需要进行个数排序,需要进行n-1趟选择趟选择第九页,共17页。过程为:过程为:令令max表示最大元素的序号(初值表示最大元素的序号(初值max=0),),a0到到a3逐一比较,找出最大元素的位置,逐一比较,找出最大元素的位置,a0与其互换,使最大值位与其互换,使最大值位于于a0。1234a0a1a2a3第一次比较第一次比较max=1第一趟:从第一趟:从4

5、个元素中选出最大者,将其换个元素中选出最大者,将其换入入a0中中4231第一趟选择结果第一趟选择结果1234第二次比较第二次比较max=21234第三次比较第三次比较max=3第十页,共17页。1234a0a1a2a3比较前:比较前:第一趟选择,大数换到第一趟选择,大数换到a0中,只交换一次中,只交换一次第一趟选择结果第一趟选择结果 max=0; for (j=1;j4;j+) if (amaxaj) max=j; temp=a0; a0=amax; amax=temp;实现一趟选择的代码为:实现一趟选择的代码为:4231第十一页,共17页。过程为:过程为:令令max表示最大元素的序号(初值表

6、示最大元素的序号(初值max=1),),a1到到a3逐一比较,找出最大元素的位置,逐一比较,找出最大元素的位置,a1与其互换,使最大值位与其互换,使最大值位于于a1。4231a0a1a2a3第一次比较第一次比较max=2第二趟:从第二趟:从3个元素中选出最大者,将其换个元素中选出最大者,将其换入入a1中中4321第二趟选择结果第二趟选择结果4231第二次比较第二次比较max=2第十二页,共17页。4231a0a1a2a3比较前:比较前:第二趟选择,大数换到第二趟选择,大数换到a1中,只交换一次中,只交换一次第二趟选择结果第二趟选择结果 max=1; for (j=2;j4;j+) if (am

7、axaj) max=j; temp=a1; a1=amax; amax=temp;实现第二趟选择的代码为:实现第二趟选择的代码为:4321第十三页,共17页。过程为:过程为:令令max表示最大元素的序号(初值表示最大元素的序号(初值max=2),),a2到到a3逐一比较,找出最大元素的位置,逐一比较,找出最大元素的位置,a2与其互换,使最大值位与其互换,使最大值位于于a2。4321a0a1a2a3第一次比较第一次比较max=2第三趟:从第三趟:从2个元素中选出最大者,将其换个元素中选出最大者,将其换入入a2中中4321第三趟选择结果第三趟选择结果第十四页,共17页。4321a0a1a2a3比较

8、前:比较前:第三趟选择,大数换到第三趟选择,大数换到a2中,只交换一次中,只交换一次第三趟选择结果第三趟选择结果 max=2; for (j=3;j4;j+) if (amaxaj) max=j; temp=a2; a2=amax; amax=temp;实现第三趟选择的代码为:实现第三趟选择的代码为:4321第十五页,共17页。for(i=0;i3;i+)1234a0a1a2a3选择排序前:选择排序前:选择排序实现由大到小排序代码选择排序实现由大到小排序代码4321选择排序后:选择排序后: max=i; for (j=i+1;j4;j+) if (amaxaj) max=j; temp=ai; ai=amax; amax=temp;4个数排序,需要个数排序,需要执行执行3趟选择。趟选择。每一趟选择,需要每一趟选择,需要数据进行两两比较

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论