算法设计与分析实验3贪心法解活动安排问题.docxVIP

算法设计与分析实验3贪心法解活动安排问题.docx

  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文档。上传文档
查看更多
实验三 贪心法解活动安排问题 一、实验内容及要求 1.要求按贪心法求解问题; 2.要求读文本文件输入活动安排时间区间数据; 3.要求显示结果。 二、实验仪器和软件平台 仪器 :普通电脑一台 软件平台: WIN-XP + MyEclipse 6.0 三、源程序 import java.awt.FileDialog; import java.io.*; import java.util.ArrayList; import java.util.List; import javax.swing.JFrame; public class GreedySelectorTest { boolean[] A; int[] S,F; //活动的开始时间 String[] name; //活动名称  结束时间 public void initData() { JFrame f=new JFrame(); FileDialog fileDialog=new FileDialog(f); fileDialog.setMode(0); fileDialog.setTitle( 打开文件 ); fileDialog.setVisible(true); List list=new ArrayList(); try { File file=new File(fileDialog.getDirectory()+fileDialog.getFile()); BufferedReader in=new BufferedReader(new InputStreamReader(new FileInputStream(file))); String s; while((s=in.readLine())!=null) { if(s.length()1) list.add(s); } in.close(); } catch(Exception e){} f.dispose(); //排序 list=this.sortList(list); //初始化 name=new String[list.size()+1]; A=new boolean[list.size()+1]; S=new int[list.size()+1]; F=new int[list.size()+1]; String[] s; for(int i=1;i=list.size();i++) { s=list.get(i-1).toString().split(,); name[i]=s[0].trim(); S[i]=Integer.parseInt(s[1].trim()); F[i]=Integer.parseInt(s[2].trim()); } } public void greedySelector(int n) { A[1]=true; int j=1; for(int i=2;i=n;i++) { if(S[i]=F[j]) { A[i]=true; j=i; } else A[i]=false; } } public void showResult() { this.greedySelector(A.length-1); System.out.println( System.out.println(  活动安排时间如下: ); 名称 开始时间  结束时间  ); for(int i=1;iA.length;i++) { if(A[i]==true) System.out.println(name[i]+ +S[i]+ +F[i]); } } /** 冒泡排序 @param list @return */ public List sortList(List list) { String[] s; Object ss; int temp,temp1; for(int i=0;ilist.size();i++) { for(int j=0;jlist.size()-i-1;j++) { s=list.get(j).toString().split(,); temp=Integer.parseInt(s[2].trim()); s=list.get(j+1).toString().split(,); temp1=Integer.parseInt(s[2].trim()); if(temptemp1) { ss=list.get(j); list.set(j, list.get(j+1)); list.set(j+1, ss); } } } return list; } public static void main(String args[]) { GreedySelectorTes

文档评论(0)

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

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

版权声明书
用户编号:6122115144000002

1亿VIP精品文档

相关文档