算法设计实验_贪心算法背包问题.doc

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《算法分析与设计》 课程实验 专业年级:信息与计算科学 学生学号: 学生姓名: 实验题目: 用贪婪法求解背包问题 指导老师: 实验时间: 20xx年xx月x日 一、实验内容 用贪婪法求解背包问题 要求:用非递归实现 二、实验步骤 2.1、理解算法思想和问题要求; 2.2、写出每个操作的算法 非递归算法: greedbag() { int N; int c; int[] w; int[] v; Scanner scan=new Scanner(System.in); System.out.print(输入背包的容量:); c=scan.nextInt(); System.out.print(输入物品的数量:); N=scan.nextInt(); System.out.print(分别输入物品的价值:); v=new int[N]; for(int i=0;iN;i++) { v[i]=scan.nextInt(); } System.out.print(分别输入物品的重量:); w=new int[N]; for(int i=0;iN;i++) { w[i]=scan.nextInt(); } System.out.println(); int [] wCopy = new int [N]; int [] vCopy = new int [N]; float temp2; int temp1; float totalx=0; float [] x = new float [N];//价值和重量的比值 float [] n =new float[N];//记录个数 float [] nCopy = new float[N]; for(int i=0;iN;i++) { wCopy [i] = w[i]; vCopy [i] = v[i]; } for (int i=0;iN;i++) x[i] = (float) ((v[i]*1.0)/w[i]); for(int i= 0;iN;i++) for(int j=i+1;jN;j++) { if(x[i] x[j]) { temp2 = x[j]; x[j] = x[i]; x[i] =temp2; temp1 = v[j]; v[j] = v[i]; v[i] = temp1; temp1 = w[j]; w[j] = w[i]; w[i] = temp1; } }//效益重量比值排序 Backpack b = new Backpack(c,w,v,n); for(int i=0;iN;i++) for(int j=0;jN;j++) { if(wCopy[i]==w[j] vCopy[i]==v[j]) { nCopy[i] = b.n[i]; } } for(int j = 0;jN;j++) totalx=totalx+n[j]*v[j]; ShowResult s = new ShowResult(v,w,N,n,totalx); } 2.3、编程实现题目要求; 2.4、调试程序; 2.5、实验数据及实验结果; 输入数据:背包容量为50公斤。物

文档评论(0)

仪器实验与分析 + 关注
实名认证
服务提供商

1.按照实验室质量管理体系的要求,进行实验室日常的检测工作; 2.负责气相色谱仪、气相色谱质谱仪的日常使用、维护; 3.负责对实验室的检测样品数据确认及出具原始记录; 4.熟悉气相室工作流程和相关质量控制要求; 5.对气相室进行流程的优化提高本组工作效率; 6.负责新项目的开发和能力验证及考核的相关工作; 7.环境安全相关法律法规,了解气相组检测相关的产品标准、检测标准; 8.掌握 GC 的使用原理及使用和维护; 9.第三方检测实验室工作流程和相关质量控制要求。

1亿VIP精品文档

相关文档