第十五周 项目一 (3)直接选择排序
来源:互联网 发布:淘宝信用最高的商品 编辑:程序博客网 时间:2024/06/05 21:07
- /*
- * Copyright(c) 2017,烟台大学计算机学院
- * All rights reserved.
- * 文件名称:a
- * 作 者:张翠平
- * 完成日期:2017 年 12 月 9 日
- * 版 本 号:v1.0
- *
- * 问题描述:验证直接选择排序
- * 输入描述:
- * 程序输出:排序后的结果。
- */
- main.cpp
#include <stdio.h>#define MaxSize 20typedef int KeyType; //定义关键字类型typedef char InfoType[10];typedef struct //记录类型{ KeyType key; //关键字项 InfoType data; //其他数据项,类型为InfoType} RecType; //排序的记录类型定义void SelectSort(RecType R[],int n){ int i,j,k,l; RecType temp; for (i=0; i<n-1; i++) //做第i趟排序 { k=i; for (j=i+1; j<n; j++) //在当前无序区R[i..n-1]中选key最小的R[k] if (R[j].key<R[k].key) k=j; //k记下目前找到的最小关键字所在的位置 if (k!=i) //交换R[i]和R[k] { temp=R[i]; R[i]=R[k]; R[k]=temp; } printf("i=%d: ",i); for (l=0; l<n; l++) printf("%d ",R[l].key); printf("\n"); }}int main(){ int i,n=10; RecType R[MaxSize]; KeyType a[]= {9,8,7,6,5,4,3,2,1,0}; for (i=0; i<n; i++) R[i].key=a[i]; printf("排序前:"); for (i=0; i<n; i++) printf("%d ",R[i].key); printf("\n"); SelectSort(R,n); printf("排序后:"); for (i=0; i<n; i++) printf("%d ",R[i].key); printf("\n"); return 0;}
运行结果:
知识点总结和心得体会:
熟悉代码,理解算法。
阅读全文
0 0
- 第十五周 项目一 (3)直接选择排序
- 第十五周项目一(5)直接选择排序
- 第十五周项目一(5)直接选择排序
- 第十五周项目一(3)——验证算法之直接选择排序
- 第十五周项目一(3)——验证算法之直接选择排序
- 第十五周 项目1 排序(直接选择排序)
- 第十五周 项目1 直接选择排序
- 第十五周 项目一(1)直接插入排序
- 第十五周 项目一(1)直接插入排序
- 第十六周项目一(3)直接选择排序
- 第十五周项目1-验证算法-直接选择排序
- 第十六周项目一----直接选择排序
- 第十五周——项目一—验证算法(6)选择排序之堆排序
- 第十五周项目1(2)--直接插入排序
- 第十五周项目1-直接插入排序(2)
- 第十五周项目1-(2)直接插入排序
- 第十五周 项目1-(2)直接插入排序
- 第十五周项目--直接排序法
- 哈夫曼压缩与解压
- 神经网络之过拟合(附代码)
- centos下设置允许远程登录mysql
- 可重入锁,可中断锁,公平锁的理解
- Travelling HDU
- 第十五周 项目一 (3)直接选择排序
- STM32 USB 虚拟串口演练
- 【Scikit-Learn 中文文档】大规模计算的策略: 更大量的数据
- map,filter函数,评价统计
- unity 给materials赋值
- Failed to fetch URL http://dl-ssl.google.com/android/repository/addons_list-1.xml.解决安装sdk版本失败问题
- 《TCP/IP详解 卷1》 笔记: TCP的成块数据流
- 动物声音模拟器
- 大数据分析理解