网站大量收购闲置独家精品文档,联系QQ:2885784924

选择排序之算法实现.ppt

  1. 1、本文档共16页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

选择法排序之算法实现选择排序的过程:对比数组中前一个元素跟后一个元素的大小,如果后面的元素比前面的元素小则用一个变量k来记住他的位置,接着第二次比较,前面“后一个元素”现变成了“前一个元素”,继续跟他的“后一个元素”进行比较如果后面的元素比他要小则用变量k记住它在数组中的位置(下标),等到循环结束的时候,我们应该找到了最小的那个数的下标了,然后进行判断,如果这个元素的下标不是第一个元素的下标,就让第一个元素跟他交换一下值,这样就找到整个数组中最小的数了。然后找到数组中第二小的数,让他跟数组中第二个元素交换一下值,以此类推。21254925*16081234562125*i=1492516251608490825*4921i=2i=3081625*2521初始最小者08交换21,08最小者16交换25,16最小者21交换49,214925*12345625*i=52516084925*4921结果i=408162521最小者25*无交换最小者25无交换25211608各趟排序后的结果1、在选择排序过程中,经过一遍排序“加工”后,数组元素a(l)到a(7)的数据依次为“10,41,75,12,63,11,85”。则下一遍排序“加工”后数组元素a(l)到a(7)的数据依次是A.10,11,41,75,12,63,85B.10,11,75,12,63,41,85C.10,11,12,75,63,41,85D.10,11,12,41,63,75,85答案:B2、选择排序:在经过一遍排序“加工”后,数组元素a(1)到a(5)的数据依次为“28,70,57,53,30”。则下一遍排序“加工”后数组元素a(1)到a(5)的数据应该是

A.28,30,70,53,57?

B.28,30,53,57,70

C.28,30,57,53,70

D.28,30,53,70,57答案:C第1步:找出n个数据(a(1)至a(n))中的 最小数,并与第1个数据a(1)交 换位置;选择法排序第2步:在剩下的n-1个数据(a(2)至a(n)) 中找出最小数,并与第2个数据 a(2)交换位置;对包含n个数据的数组按从小到大排列第i步:在剩下的n-i+1个数据(a(i)至a(n))中找出最小数,并与第i个数据a(i)交换位置;第1步:找出n个数据(a(1)至a(n))中的 最小数,并与第1个数据a(1)交 换位置;选择法排序对包含n个数据的数组按从小到大排列i=1~?n-1选择法排序的基本算法Fori=1Ton-1’n代表的是数组里面数据的总数Nexti找出a(i)至a(n)中的最小值将最小值与第i个数据a(i)交换位置Min=i‘min变量代表是找到的最小数Forj=i+1Ton‘j变量代表的当前处理的数组下标Ifa(Min)a(j)ThenMin=jNextj选择法排序的基本算法Fori=1Ton-1Nexti找出a(i)至a(n)中的最小值将最小值与第i个数据a(i)交换位置Temp=a(i)a(i)=a(Min)a(Min)=Temp一、随机生成10个整数,请用选择法对其进行排序。PrivateSubCommand1_Click()Dima(1To10)AsIntegerDimiAsInteger,jAsInteger,kAsInteger‘k变量代表是找到的最小数Print排序以前的数:Fori=1To10a(i)=Int(100*Rnd)Printa(i);NextiPrintFori=1To9‘Fori=1to9是因为数组a只包含10个元素,按选择排序的要求,需要将数组前9个元素分别与后面的元素(从i+1起,直到10为止)比较大小k=i

文档评论(0)

shaoye348 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档