算法第五章上机实践报告

实践题目 :工作分配问题

问题描述:设有n件工作分配给n个人。将工作i分配给第j个人所需的费用为cij 。 设计一个算法,对于给定的工作费用,为每一个人都分配1 件不同的工作,并使总费用达到最小。

算法描述:剪枝后的解空间树如下(原解空间每一父节点都有三个子节点,分别对应第1、2、3个工作的费用)

所以解空间有(10,3,5),(10,4,4),(2,2,5),(2,4,3),(3,2,5),(3,3,3)

剪枝:当前总费用大于最优解时即回溯,同时选过的工作在这个解中不会再被选中。

心得体会:

一开始做回溯的时候在backtrack的递归中有点卡住,后面在约束函数那里也研究了一段时间,跟同伴一起思考研究还是很有效率的,想通了之后做第一题0-1背包就比较顺畅了。

posted on 2018-12-23 20:27  思渊鱼  阅读(81)  评论(0编辑  收藏  举报

导航