数模论坛

 找回密码
 注-册-帐-号
搜索
热搜: 活动 交友 discuz
查看: 4098|回复: 4

本人用登上算法求解背包问题的matlab程序

[复制链接]
发表于 2004-10-5 21:42:41 | 显示全部楼层 |阅读模式
<>%用登山算法求解背包问题
function []=DengShan(n,G,P,W)
%n是背包的个数,G是背包的总容量,P是价值向量,W是物体的重量向量
%n=3;G=20=[25,24,15];W2=[18,15,10];%输入量
W2=W;
[Y,I]=sort(-P./W2);W1=[];X=[];X1=[];
for i=1:length(I)
    W1(i)=W2(I(i));
end
W=W1;
for i=1:n
    X(i)=0;
    RES=G;%背包的剩余容量
    j=1;
    while W(j)&lt;=RES
        X(j)=1;
        RES=RES-W(j);
        j=j+1;
    end
    X(j)=RES/W(j);
end
for i=1:length(I)
    X1(I(i))=X(i);
end
X=X1;
disp('装包的方法是');disp(X);disp(X.*W2);disp('总的价值是:');disp(P*X');</P>
<>时间复杂度是非指数的</P>
发表于 2004-10-12 19:03:46 | 显示全部楼层
[em07][em06][em05]好利害啊
发表于 2004-10-12 19:05:21 | 显示全部楼层
但我看不懂啊
发表于 2005-8-17 06:34:23 | 显示全部楼层
<>不错啊</P>
发表于 2005-9-15 04:27:30 | 显示全部楼层
多谢!!!!!!!!!!
您需要登录后才可以回帖 登录 | 注-册-帐-号

本版积分规则

小黑屋|手机版|Archiver|数学建模网 ( 湘ICP备11011602号 )

GMT+8, 2024-11-30 15:50 , Processed in 0.063835 second(s), 19 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表