L
LeeChange
Unregistered / Unconfirmed
GUEST, unregistred user!
分支定界法
一个固定边界:及所求和X,对应代码if (a[Stack[Top].d]+Stack[Top].Sum)<X then
一个移动边界:及已经求得的最优解,存放在变量Best里,因为要求最多6个数,所以赋初值为7.剪枝操作对应语句为while (Stack[Top].d<m) and (Top<Best) do中的(Top<Best)部分.边界移动部分对应语句
else if (a[Stack[Top].d]+Stack[Top].Sum)=X then
begin
Best:=Top;
一个固定边界:及所求和X,对应代码if (a[Stack[Top].d]+Stack[Top].Sum)<X then
一个移动边界:及已经求得的最优解,存放在变量Best里,因为要求最多6个数,所以赋初值为7.剪枝操作对应语句为while (Stack[Top].d<m) and (Top<Best) do中的(Top<Best)部分.边界移动部分对应语句
else if (a[Stack[Top].d]+Stack[Top].Sum)=X then
begin
Best:=Top;