📄 repair.m
字号:
%repair 修改超重的问题解,即选择的物品重量不能超过限重C
overfiled=0;%不超重
for j=1:n
if sum(x(j,:)*w')>C %超重
overfiled=1;%超重符号
end
while overfiled
k=fix(1+rand()*(m-1));%选择其中一个物品放弃
x(j,k)=0;
if sum(x(j,:)*w')<=C%不超重了
overfiled=0;
end
end
while ~overfiled %不超重
k=fix(1+rand()*(m-1));%尽可能的再多选一个物品
x(j,k)=1;
if sum(x(j,:)*w')>C %超重了
overfiled=1;
end
end
x(j,k)=0;%将刚才选择后导致超重的那个物品丢弃
x(j,:);
end
x;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -