首页 B8载-冒泡法排序和选择法排序分析过程

B8载-冒泡法排序和选择法排序分析过程

举报
开通vip

B8载-冒泡法排序和选择法排序分析过程nullnull例6-3. 用冒泡法对10个数排序排序过程: (假设这10个数放在a[1] ~a[10]中) (1)比较第1个数与第2个数,若为逆序a[1]>a[2],则 ˋ 交换;然后比较第2个数与第3个数;依次类推,直 至第9个数和第 10个数比较为止——第一趟冒泡排 序,结果最大的数被安置在第10个位置上最后一个 元素位置),此过程须经过9次比较; (2)对前9个数进行第二趟冒泡排序,结果使次大的数ˋ 被安置在第9个元素位置...

B8载-冒泡法排序和选择法排序分析过程
nullnull例6-3. 用冒泡法对10个数排序排序过程: (假设这10个数放在a[1] ~a[10]中) (1)比较第1个数与第2个数,若为逆序a[1]>a[2],则 ˋ 交换;然后比较第2个数与第3个数;依次类推,直 至第9个数和第 10个数比较为止——第一趟冒泡排 序,结果最大的数被安置在第10个位置上最后一个 元素位置),此过程须经过9次比较; (2)对前9个数进行第二趟冒泡排序,结果使次大的数ˋ 被安置在第9个元素位置,此过程须经过8次比较; (3)重复上述过程(上述排序过程须重复9次),直到ˋˊ 排序完成。null第1趟排序:a[1] — a[2],a[2] — a[3], a[3] — a[4],a[4] — a[5] a[5] — a[6],a[6] — a[7],a[7] — a[8],a[8] — a[9],a[9] —a[10]比较次数:9次,a[i]—a[i+1],i :1~9第2趟排序:a[1] — a[2],a[2] — a[3], a[3] — a[4],a[4] — a[5] a[5] — a[6],a[6] — a[7], a[7] — a[8],a[8] — a[9] 第3趟排序:a[1] — a[2],a[2] — a[3], a[3] — a[4],a[4] — a[5] a[5] — a[6],a[6] — a[7],a[7] — a[8] ∷∷∷第9趟排序: a[1] — a[2] j = 1, i :1~10-j比较次数:8次,a[i]—a[i+1],i :1~8比较次数:7次,a[i]—a[i+1],i :1~7 j = 2, i :1~10-j j = 3, i :1~10-j比较次数:1次,a[i]—a[i+1],i :1 j = 9, i :1~10-jnull#include void main() { int a[11],i,j,t; printf("Input 10 numbers:\n"); for(i=1;i<=10;i++) scanf("%d",&a[i]); printf("\n"); for(j=1;j<=9;j++) for(i=1;i<=10-j;i++) if(a[i]>a[i+1]) {t=a[i]; a[i]=a[i+1]; a[i+1]=t;} printf("The sorted numbers:\n"); for(i=1;i<=10;i++) printf("%d ",a[i]); }null例6-4**. 用简单选择法对10个数排序排序过程: (1)首先通过9次比较,从10个数中找出最小的, 将它与ˋ 第1个数交换—第一趟选择排序,结果最小的数被安ˋ ˋˊ 置在第1个元素位置上 (2)再通过8次比较,从剩余的9个数中找出次小的数,将ˋˊ 它与第2个数交换—第二趟选择排序 (3)重复上述过程,共经过9趟排序后,排序结束null [ 49 38 65 97 76 13 27 ]第1趟 (i = 1):1349 13 [38 65 97 76 49 27 ]2738 13 27 38 49 65 76 [97 ]第2趟 (i =2 ):第3趟 (i =3 ):第4趟 (i =4 ):第5趟 (i =5 ):第6趟 (i =6 ):null第1趟排序: 初始时k→1 a[2] — a[k],a[3] — a[k], … … ,a[10] — a[k]比较次数:9次, 每次比较 a[j]—a[k],其中,j :2~10,最后 交换a[1]和a[k]第2趟排序:初始时k→2 a[3] — a[k],a[4] — a[k], … … ,a[10] — a[k] 第3趟排序:初始时k→3 a[4] — a[k],a[5] — a[k], … … ,a[10] — a[k] ∷∷∷第9趟排序: k→9 a[10] — a[k]比较次数:8次, 每次比较 a[j]—a[k],其中,j :3~10,最后 交换a[2]和a[k]比较次数:7次, 每次比较 a[j]—a[k],其中,j :4~10,最后 交换a[3]和a[k]比较次数:1次,比较 a[j]—a[k],其中,j:10 , 最后 交换a[9]和a[k]null#include void main() { int a[11],i,j,k,x; printf("Input 10 numbers:\n"); for(i=1;i<=10;i++) scanf("%d",&a[i]); printf("\n"); for(i=1;i<=9;i++) { k=i; for(j=i+1;j<=10;j++) if(a[j]
本文档为【B8载-冒泡法排序和选择法排序分析过程】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_219687
暂无简介~
格式:ppt
大小:221KB
软件:PowerPoint
页数:0
分类:互联网
上传时间:2010-12-16
浏览量:187