0 1背包问题数据结构 背包问题

0 1背包问题  时间:2022-02-23  阅读:()

数据结构 背包问题

#include <stdio.h> #define N 6 int main(){ //从N个背包(每个背包中w[k])中选取总重为T的背包,共有多少种选法 ??????? int w[N]={1,8,3,4,5,2};?????? //6个背包 ??????? int T=10;????????????????????????????? //总重 ??????? int k=0;????????????????????? ??????? int i=0; ??????? int j=1; ??????? struct stacks{????????????????????? //栈 ??????????????? int s[N]; ??????????????? ; ??????? } the_stack; ???????//初始化栈 ?????? ?for(i=0;i<N;i++) the_stack.s[i]=0; ??????? the_=0; ??????? do{ ??????????????? while(T>0&&k<=N){ ??????????????????????? if(T>=w[k]){??????????????????????????????????????????????????? //符合条件的背包进栈 ??????????????????????????????? the_stack.s[the_++]=k; ??????????????????????????????? T-=w[k]; ??????????????????????? } ??????????????????????? k++;????????????????????????????????????????????????????????????????? //不符合则考察下一个背包 ??????????????? } ??????????????? if(T==0){??????????????????????????????????????????????????????????????? //找到一种方法,输出 ??????????????????????? printf("------------Answer%d------------ ",j); ??????????????????????? for(i=0;i<the_;i++){ ??????????????????????????????? printf("%d[%d] ",the_stack.s[i],w[the_stack.s[i]]); ??????????????????????? } ??????????????????????? j++; ??????????????????????? printf(" "); ??????????????? } ??????????????? k=the_stack.s[--the_];??????????? //找不到方法,则前一个入栈的背包出栈,继续考察下一个背包 ??????????????? the_stack.s[the_]=0; ??????????????? T+=w[k]; ??????????????? k++; ??????? }while(!(the_==0&&k==N));?????????? //当栈空且k==N时,所有可能的组合都考察完毕,推出循环 } 运行结果: ------------Answer1------------ 0[1] 2[3] 3[4] 5[2] ------------Answer2------------ 0[1] 3[4] 4[5] ------------Answer3------------ 1[8] 5[2] ------------Answer4------------ 2[3] 4[5] 5[2]

buyvm美国大硬盘VPS,1Gbps带宽不限流量

buyvm正式对外开卖第四个数据中心“迈阿密”的块存储服务,和前面拉斯维加斯、纽约、卢森堡一样,依旧是每256G硬盘仅需1.25美元/月,最大支持10T硬盘。配合buyvm自己的VPS,1Gbps带宽、不限流量,在vps上挂载块存储之后就可以用来做数据备份、文件下载、刷BT等一系列工作。官方网站:https://buyvm.net支持信用卡、PayPal、支付宝付款,支付宝付款用的是加元汇率,貌似...

TTcloud:日本独立服务器促销活动,价格$70/月起,季付送10Mbps带宽

ttcloud怎么样?ttcloud是一家海外服务器厂商,运营服务器已经有10年时间,公司注册地址在香港地区,业务范围包括服务器托管,机柜托管,独立服务器等在内的多种服务。我们后台工单支持英文和中文服务。TTcloud最近推出了新上架的日本独立服务器促销活动,价格 $70/月起,季付送10Mbps带宽。也可以跟进客户的需求进行各种DIY定制。点击进入:ttcloud官方网站地址TTcloud拥有自...

快云科技,免云服务器75折优惠服务器快云21元/月

近日快云科技发布了最新的夏季优惠促销活动,主要针对旗下的香港CN2 GIA系列的VPS云服务器产品推送的最新的75折优惠码,国内回程三网CN2 GIA,平均延迟50ms以下,硬件配置方面采用E5 2696v2、E5 2696V4 铂金Platinum等,基于KVM虚拟架构,采用SSD硬盘存储,RAID10阵列保障数据安全,有需要香港免备案CN2服务器的朋友可以关注一下。快云科技怎么样?快云科技好不...

0 1背包问题为你推荐
win7中文语言包win7专业版怎么安装中文语言包windowsmedia电脑的大部分软件打开方式变为了Windows media centerrenderpartialYii中render和renderPartial的区别avc是什么格式电厂AVC啥意思?暴力破解rar怎么暴力破解rar密码?快速且有效的无处不在的意思,幸福无处不在,最适合才是最好是什么意思webservice框架什么是webservice,什么情况下使用,如何使用averagesPoisson-Arrivals-See-Time-Averages是什么意思cursorlocation在ENVI中双击遥感图像出来个CURSOR LOCATION/value对话框。下面有个LL : 31?6'21.84"N, 117?9'11.78"E空间导航怎么把空间的导航变成只有留言板跟相册
域名拍卖 大庆服务器租用 主机测评网 国外idc edis 美国php主机 火车票抢票攻略 免费smtp服务器 好看qq空间 七夕促销 ftp免费空间 下载速度测试 谷歌台湾 免费个人主页 阿里云手机官网 1美元 黑科云 hdsky apachetomcat web服务器有哪些 更多