收藏 分销(赏)

选择排序法的思路及C语言程序代码.doc

上传人:快乐****生活 文档编号:2492376 上传时间:2024-05-30 格式:DOC 页数:2 大小:28.04KB
下载 相关 举报
选择排序法的思路及C语言程序代码.doc_第1页
第1页 / 共2页
选择排序法的思路及C语言程序代码.doc_第2页
第2页 / 共2页
亲,该文档总共2页,全部预览完了,如果喜欢就下载吧!
资源描述

1、(完整word)选择排序法的思路及C语言程序代码选择排序法选择排序法是从算法优化的角度对冒泡法的改进,其改进的思想是:经过一轮的两两比较后,并不马上交换数的位置,而是找到本轮最小的数,记下该数的位置(即在数组中的下标),待本轮比较完毕后,通过一次交换即可将本轮最小的数交换到位。示例详解假设数组a的5个元素依次为:9、10、8、7、6。下图说明了选择排序法的操作过程:第一轮比较:k=0第一次比较: 9 10 8 7 6 比较a0和a1, a0a1,k=0第二次比较: 9 10 8 7 6 比较a0和a2, a0a2,k=2第三次比较: 9 8 10 7 6 比较a2和a3, a2a3,k=3第四

2、次比较: 9 8 7 10 6 比较a3和a4, a3a4,k=4第一次交换前:9 8 7 10 6 将a4和a0进行交换第一次交换后:6 8 7 10 9 这样,最小的元素就放到了数组最前面的位置第二轮比较:k=1第一次比较: 6 8 7 10 9 比较a1和a2, a1a2,k=2第二次比较: 6 8 7 10 9 比较a2和a3, a2a3,k=2第三次比较: 6 8 7 10 9 比较a2和a4, a2a3,k=2第二次交换前:6 8 7 10 9 将a2和a1进行交换第二次交换后:6 7 8 10 9第三轮比较:k=2第一次比较: 6 7 8 10 9 比较a2和a3, a2a3,k=2第二次比较: 6 7 8 10 9 比较a2和a4, a2define N 13using namespace std;void main()float a=2,5,13,1,10,6,3,4,12,8,11,9,7; for(int i=0;i=N2;i+) int k=i; for(int j=i+1;j=N1;j+) if(akaj) k=j; /交换标号if(k!=i) float temp=ak; /交换ak和ai ak=ai; ai=temp; for(i=0;i=N1;i+) coutai ”; coutendl;程序运行结果如下:

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 通信科技 > 开发语言

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服