




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、或拥忌显工社大哮(hengdn University of Information Technology算法设计与分析基础实验报告应用数学学院姓名:学号:班级:二零一六年六月实验 选择排序算法一、实验性质 设计二、实验学时 14 学时三、实验目的1、掌握选择排序的方法和原理。2、掌握 java 语言实现该算法的一般流程。四、实验内容1、数组的输入。2、输入、输出的异常处理。3、选择排序的算法流程。4、运行结果的输出。五、实验报告I、算法原理首先扫描整个列表,在未排序序列中找到最小(大)元素,存放到 排序序列的起始位置, 再从剩余未排序元素中继续寻找最小 (大)元素, 然后放到已排序序列的末尾。
2、然后从第二个元素开始扫描列表,找到最 后 n-1 个元素中的最小元素,在和第二个元素交换位置,把第二小的元 素放在它的最终位置上。一般来说,在对该列表做第 i 次扫描的时候( i 的值从 0 到 n-2 ),该算法在最后 n - i 个元素中寻找最小元素,然后拿 它和 Ai 交换,在 n-1 遍以后就被排序好了。U、书中源代码算法 SelectionSort(A0.n-1)/ 输入:一个可排序数组 A0.n-1/ 输出:升序排列的数组 A0.n-1for i J 0 to n-2 domin J ifor j J i+1 to n-1 doif Aj Amin min J jswap Ai a
3、nd AminIH、Java算法代码:import java.util.*;public class Xuanze public static void main(String args) int n = 5;int a = new intn;int i = 0, j = 0;int sm = 0, min = 0;System.out.println( 请输入一组数字: );Scanner sc = new Scanner(System.in);try while (i n) ai=sc.nextInt();i+;for (i = 0; i = n - 2; i+) min = i;for
4、(j = i+1;j=n-1; j+) if (aj amin) min=j;sm = amin;amin = ai;ai = sm;System.out.println( 选择排序输出结果为: );for (i = 0; i n; i+) System.out.println(ai); catch (Exception e) System.out.println(e);W、运行结果显示:图( 1)图(2)V、实验结论:选择排序是一个G)(?)的算法,键的交换次数仅为G)( n) 或者是 n-1 次。择排序的主要优点与数据移动有关。如果某个元 素位于正确的最终位置上,则它不会被移动。选择排序每
5、次交换一对元素,它们当中至少有一个将被移到其最终位置上,因此对n 个元素的表进行排序总共进行至多 n-1 次交换。在所有的完全 依靠交换去移动元素的排序方法中, 选择排序属于非常好的一种。实验三 折半查找算法一、实验性质 设计二、实验学时 14 学时三、实验目的1、掌握折半查找算法的方法和原理。2、掌握 java 语言实现该算法的一般流程。四、实验内容1、给定一个数组。2、输入、输出的异常处理。3、折半查找的算法流程。4、运行结果的输出。五、实验报告I、算法原理折半查找法是效率较高的一种查找方法。 假设有已经按照从小到大的顺 序排列好的五个整数??,要查找的数是K,通过比较查找键K和数组中 间
6、元素 Am 来完成查找工作。如果他们相等,算法结束,否则,如果 KAm, 则对数组的后半部分执行该 操作。U、书中源代码算法 BinarySearch(A0.n-1,K)/ 实现非递归的折半查找/ 输入:一个可排序数组 A0.n-1 和一个查找键 K-1I J 0; r J n - 1while I r dom J (I+r)/2if K = Amreturn meIse if K Java算法代码:import java.utiI.*;pubIic cIass Zheban pubIic static void main(String args) int k = 0, i = 0, m =
7、0;int a = 15,25,36,98,108,250,360,782;int s = a.Iength-1;System.out.printIn( 请输入一个需要查找的数字: );Scanner sc = new Scanner(System.in);tryk = sc.nextInt();whiIe (i=s) m=(int)(i+s)/2);if (k = am) 该数字在数组中的下System.out.print( 标为: +m);System.exit(-1);else if (k am)s = m - 1;elsei=m+1; System.out.println(-1);catch(Exception es)System.out.println(es);W、运行结果显示:V、实验结论:折半
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年宿州泗县卫健系统县级医院招聘真题
- 逾期自我检讨书
- 涉外继承纠纷分析基础知识点归纳
- 社区大数据与社区信息化政策研究基础知识点归纳
- 2025年中考音乐知识试题
- 2025图解《政务数据共享条例》V1.0学习解读
- 资源循环利用产业的多元化融资模式与投资吸引力
- 区域性废弃物循环利用项目的可持续发展与生态影响分析
- 医疗设备企业经营管理方案
- 2025至2030年中国甲基氨基酮行业投资前景及策略咨询报告
- 新人教小学四年级数学下册第6单元小数的加法和减法第1课时《小数的加减法(一)》示范教学设计
- 七年级语文下册第六单元《带上她的眼睛》课件
- 贝雷梁支架结构计算书
- 湖南省怀化市会同县2023-2024学年一年级下学期期末考试数学试题
- 幼儿园大班语言课件:《毕业诗》
- 人教版二年级下册口算题天天练1000道可打印带答案
- 劳动力保证措施以及计划安排
- 江苏省南通市如皋市如城实验小学2023-2024学年五年级下学期期末模拟测试语文试卷
- 2021利达JB-QG-LD988EL JB-QT-LD988EL 火灾报警控制器 消防联动控制器调试手册
- 24春国家开放大学《班级管理》形考任务1-4参考答案
- 教育资源调查报告
评论
0/150
提交评论