摘要:
算法描述:0-1背包的回溯法,与装载问题的回溯法十分相似。在搜索解空间树时,只要其左儿子结点是一个可行结点,搜索就进入其左子树。当右子树中有可能包含最优解时才进入右子树进行搜索。否则将右子树剪去。 计算右子树上界的更好算法是: 将剩余物品依其单位重量价值排序,然后依次装入物品,直至装不下时,再装入该物品的一部分而装满背包。算法实现: 由Bound函数计算当前节点处的上界。 类Knap的数据成员记录解空间树的节点信息,以减少参数传递及递归调用所需的栈空间。 在解空间树的当前扩展结点处,仅当要进入右子树时,才计算上界bound,以判断是否可将右子树剪去。 进入左子树时不需要计算上界... 阅读全文
posted @ 2012-10-24 14:59
xingoo
阅读(1260)
评论(0)
推荐(0)

浙公网安备 33010602011771号