欢迎来到天天文库
浏览记录
ID:39311251
大小:18.00 KB
页数:3页
时间:2019-06-30
《贪心算法-一般背包问题》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、importjava.util.*;publicclassTX{publicstaticvoidmain(String[]args){Scannerin=newScanner(System.in);System.out.println("请输入物品的数量:");intn=in.nextInt();int[]w=newint[n];int[]v=newint[n];System.out.println("现在请输入这些物品的重量:");for(inti=0;i2、);}System.out.println("现在请输入这些物品的价值:");for(inti=0;i3、i=0;i4、v1=newint[n];for(inti=0;i5、;i++){if(w1[i]<=c){x[i]=1;c=c-w1[i];}else{k=(c*1.0)/w[i];x[i]=k;break;}}System.out.println("解向量是:"+Arrays.toString(x));/***根据解向量求出背包中存放物品的最大价值并打印*/intmaxValue=0;for(inti=0;i6、7、x[i]==kif(x[i]==1)maxValue+=v1[i];elsemaxValue+=v1[i]*k;}doubleendTime8、=System.currentTimeMillis();System.out.println("背包中物品的最大价值为:"+maxValue);System.out.println("基本语句用时"+(endTime-startTime)+"milliseconds!");}}
2、);}System.out.println("现在请输入这些物品的价值:");for(inti=0;i3、i=0;i4、v1=newint[n];for(inti=0;i5、;i++){if(w1[i]<=c){x[i]=1;c=c-w1[i];}else{k=(c*1.0)/w[i];x[i]=k;break;}}System.out.println("解向量是:"+Arrays.toString(x));/***根据解向量求出背包中存放物品的最大价值并打印*/intmaxValue=0;for(inti=0;i6、7、x[i]==kif(x[i]==1)maxValue+=v1[i];elsemaxValue+=v1[i]*k;}doubleendTime8、=System.currentTimeMillis();System.out.println("背包中物品的最大价值为:"+maxValue);System.out.println("基本语句用时"+(endTime-startTime)+"milliseconds!");}}
3、i=0;i4、v1=newint[n];for(inti=0;i5、;i++){if(w1[i]<=c){x[i]=1;c=c-w1[i];}else{k=(c*1.0)/w[i];x[i]=k;break;}}System.out.println("解向量是:"+Arrays.toString(x));/***根据解向量求出背包中存放物品的最大价值并打印*/intmaxValue=0;for(inti=0;i6、7、x[i]==kif(x[i]==1)maxValue+=v1[i];elsemaxValue+=v1[i]*k;}doubleendTime8、=System.currentTimeMillis();System.out.println("背包中物品的最大价值为:"+maxValue);System.out.println("基本语句用时"+(endTime-startTime)+"milliseconds!");}}
4、v1=newint[n];for(inti=0;i5、;i++){if(w1[i]<=c){x[i]=1;c=c-w1[i];}else{k=(c*1.0)/w[i];x[i]=k;break;}}System.out.println("解向量是:"+Arrays.toString(x));/***根据解向量求出背包中存放物品的最大价值并打印*/intmaxValue=0;for(inti=0;i6、7、x[i]==kif(x[i]==1)maxValue+=v1[i];elsemaxValue+=v1[i]*k;}doubleendTime8、=System.currentTimeMillis();System.out.println("背包中物品的最大价值为:"+maxValue);System.out.println("基本语句用时"+(endTime-startTime)+"milliseconds!");}}
5、;i++){if(w1[i]<=c){x[i]=1;c=c-w1[i];}else{k=(c*1.0)/w[i];x[i]=k;break;}}System.out.println("解向量是:"+Arrays.toString(x));/***根据解向量求出背包中存放物品的最大价值并打印*/intmaxValue=0;for(inti=0;i6、7、x[i]==kif(x[i]==1)maxValue+=v1[i];elsemaxValue+=v1[i]*k;}doubleendTime8、=System.currentTimeMillis();System.out.println("背包中物品的最大价值为:"+maxValue);System.out.println("基本语句用时"+(endTime-startTime)+"milliseconds!");}}
6、
7、x[i]==kif(x[i]==1)maxValue+=v1[i];elsemaxValue+=v1[i]*k;}doubleendTime
8、=System.currentTimeMillis();System.out.println("背包中物品的最大价值为:"+maxValue);System.out.println("基本语句用时"+(endTime-startTime)+"milliseconds!");}}
此文档下载收益归作者所有