VB各种排序方法 新 参赛课件.ppt

VB各种排序方法 新 参赛课件.ppt

ID:57636604

大小:593.50 KB

页数:14页

时间:2020-08-29

VB各种排序方法  新  参赛课件.ppt_第1页
VB各种排序方法  新  参赛课件.ppt_第2页
VB各种排序方法  新  参赛课件.ppt_第3页
VB各种排序方法  新  参赛课件.ppt_第4页
VB各种排序方法  新  参赛课件.ppt_第5页
资源描述:

《VB各种排序方法 新 参赛课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、筛选法排序2134621346不交换交换3124641236交换交换6123461234交换62134交换交换631246412364123交换6421364312交换64312交换64321第一轮比较第二轮比较第三轮比较第四轮比较主讲:****筛选法排序例:筛选法排序。(设从大到小排序)[分析]:将N个无序数据存放在数组中,对数组进行N-1轮扫视。第一轮扫视:将A(1)与A(2)比较,若A(1)

2、视:将A(2)与A(3)、A(4)…A(N)依次按以上规则比较;第三轮扫视:将A(3)与A(4)、A(5)…A(N)依次按以上规则比较;第N-1扫视:将A(N-1)与A(N)按以上规则比较排序完成。筛选法排序假定待排序的N个数已存放在数组A中1.确定排序需要几轮的比较ForI=1ToN–1NextI1.确定排序需要几轮的比较2.进行每一轮的比较ForJ=ToNextJ1.确定排序需要几轮的比较2.进行每一轮的比较3.在每一轮比较中,比较两个数的大小,根据比较结果决定是否交换两个数IfA(I)

3、+1NText1=Text1&Str(A(I))Text1=Text1&Str(A(N))筛选法排序返回用元素A(Pointer)去比较直接排序24536I:1Pointer:164532交换Pointer:2交换Pointer:3不交换交换Pointer:5第一轮比较结束I≠Pointer则交换A(I)、A(Pointer)即交换A(1)和A(6)64532第一轮比较第二轮比较I:2Pointer:2交换Pointer:3不交换不交换第二轮比较结束I≠Pointer则交换A(I)、A(Pointer)即交换A(2)和A(3)65432第三轮比较65432I:3

4、Pointer:3不交换不交换第三轮比较结束I=Pointer则不交换A(I)、A(Pointer)第四轮比较65432I:4Pointer:4不交换第四轮比较结束I=Pointer则不交换A(I)、A(Pointer)排序结束65432直接排序设待排序的N个数存放在数组A中1.确定排序需要几轮的比较ForI=1ToN–1NextI1.确定排序需要几轮的比较2.设置这一轮指针初值Pointer=I1.确定排序需要几轮的比较2.设置这一轮指针初值3.开始一轮的比较ForJ=I+1ToNNextJIfA(Pointer)

5、1.确定排序需要几轮的比较2.设置这一轮指针初值3.开始一轮的比较4.进行比较,根据比较结果 决定是否改变指针的值1.确定排序需要几轮的比较2.设置这一轮指针初值3.开始一轮的比较4.进行比较,根据比较结果 决定是否改变指针的值5.一轮的比较结束后,根据指针的值与I是否不同,确定是否交换A(I)、A(Pointer)的值IfI<>OptionterThenT=A(I)A(I)=A(Pointer)A(Pointer)=A(I)EndIf直接排序返回冒泡法排序[分析]:(设从小到大排序)第一轮比较:将A(1)和A(2)比较,若A(1)>A(2)则交换这两个数组元素

6、的值,否则不交换;然后再用A(2)和A(3)比较,处理方法相同;以此类推,直到A(N-1)和A(N)比较后,这时A(N)中就存放了N个数中最大的数。第二轮比较:将A(1)和A(2)、A(2)和A(3),,A(N-2)和A(N-1)比较,处理方法和第一轮相同,这一轮比较结束后A(N-1)中就存放了N个数中第二小的数。第N-1轮比较:将A(1)和A(2)进行比较,处理方法同上,比较结束后,这N个数按从小到大的次序排列好。每一轮的比较后都会使小数逐渐浮起来,大数下沉,就象冒泡一样冒泡排序举例:对整数序列85243按升序排序8524352438243582345

7、823458初始状态第一趟结果第二趟结果第三趟结果第四趟结果小的逐渐上升每趟沉下一个最大的8582483885243程序冒泡法排序一冒泡排序举例:对整数序列85243按升序排序82345初始状态第一趟结果第二趟结果小的逐渐上升每趟沉下一个最大的8238485888524323458冒泡法排序二(按降序排列)第一论扫视:1、6、5、4、3、26、1、5、4、3、26、5、1、4、3、26、5、4、1、3、26、5、4、3、1、26、5、4、3、2、1第二轮扫视:6、5、4、3、2、16、5、4、3、2、16、5、4、3、2、16、5、4、3、2、16、5、4、3、

8、2、1发生交换,继续下一

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

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

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