算法实验报告实验一算法验报告实验一.docVIP

算法实验报告实验一算法验报告实验一.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
算法实验报告实验一算法验报告实验一.doc

算法分析与设计 实验报告 项目名称 分治算法实现和时间复杂性验证 专业班级 学 号 姓 名 实验成绩: 批阅教师: 年 月 日  PAGE 5 实验1《分治算法实现和时间复杂性验证》 实验学时: 2 实验地点: 二综 实验日期: 一、实验目的 熟悉分治法的使用 二、实验内容 1)编程实现归并排序算法和快速排序算法。 2)程序中使用一个变量对元素的比较运算进行计数,将实际计数和理论分析的时间复杂度比较。 三、实验方法 分治法 四、实验步骤 预习,预先完成编程的初步工作,在实验课上通过程序。 五、实验结果 public class mergeSort { public static void main(String[] args){ double test[] ={2,7,4,8,3,36,1,6,46,25}; System.out.println(排序前的数组); for(int i = 0;i test.length;i++){ System.out.print(test[i] + ); } mergeSort(test,test.length); System.out.println(\n + 排序后的数组); for(int i = 0;i test.length;i++){ System.out.print(test[i] + ); } System.out.println(\n + 比较的次数: + count); } public static int count = 0; public static double[] mergeSort(double a[],int n) { double[] b = new double[n]; int s = 1; while(s n){ mergePass(a,b,s,n); s += s; mergePass(b,a,s,n); s += s; } return b; } public static void mergePass(double x[],double y[],int s,int n) { int i = 0; while(i = n - 2 * s){ merge(x,y,i,i + s - 1,i + 2 * s - 1); i = i + 2 * s; } if(i + s n){ merge(x,y,i,i + s - 1,n - 1); } else for(int j = i;j = n - 1;j++){ y[j] = x[j]; } } public static void merge(double c[],double d[],int l,int m,int r) { int i = l,j = m + 1,k = l; while((i = m)(j = r)){ if(c[i] = c[j]){ d[k++] = c[i++]; count++; } else{ d[k++] = c[j++]; count++; } } if(i m){ for(int q = j;q = r;q++){ d[k++] = c[q]; count++; } } else{ for(int q = i;q = m;q++){ d[k++] = c[q]; count++; } } } } public class QuickSort { public static void main(String[] args){ int[] test ={2,7,4,8,3,36,1,6,46,25}; System.out.println(排序前的数组); for(int i = 0;i test.length;i++){ System.out.print(test[i] + ); } quickSort(test,0,test.length - 1); System.out.println(\n + 排序后的数组); for(int i = 0;i test.l

文档评论(0)

zyongwxiaj8 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档