(1)定义 子集树:所给问题是从N个元素的集合中找出满足某种性质的子集时,相应的解空间树,称为子集树。子集树通常有2^n个叶节点,遍历子集树的任何算法都需要O(2^n)的计算时间。 例如:0-1背包问题的解空间树为一棵子集树。 排列树:当所给的问题是确定N个元素满足某种性质的排列时,相应的解空间称为 ...
分类:
其他好文 时间:
2019-01-30 18:27:02
阅读次数:
2246
已知初始状态和目标状态时可用双向搜索 有种神仙代码实际上不对, 没有判重, 拓展了很多重复的状态节点 但 还是能算出答案 , 用小样例验证时还看不出来, 一交全TLE 所以千万要记得判重 详见代码, ~~自认为码风清奇~~ include include include define re regi ...
分类:
其他好文 时间:
2019-01-27 22:04:22
阅读次数:
188
用途: 解决单源最短路径问题(已固定一个起点,求它到其他所有点的最短路问题) 算法核心(广搜): (1)确定的与起点相邻的点的最短距离,再根据已确定最短距离的点更新其他与之相邻的点的最短距离。 (2)之后的更新不需要再关心最短距离已确定的点 三种实现模板: 一、矩阵朴素版 二、vector简单版 三 ...
分类:
编程语言 时间:
2019-01-27 12:56:48
阅读次数:
210
1.实践题目 :工作分配问题 2.问题描述 设有n件工作分配给n个人。将工作i分配给第j个人所需的费用为cij 。 设计一个算法,对于给定的工作费用,为每一个人都分配1 件不同的工作,并使总费用达到最小。 3.算法描述(包括解空间,画出测试样例的解空间树,剪枝(约束函数或限界函数)方法描述) 剪枝: ...
分类:
编程语言 时间:
2018-12-24 19:48:04
阅读次数:
110
1.实践题目 工作分配问题 2.问题描述 设有n件工作分配给n个人。将工作i分配给第j个人所需的费用为cij 。 设计一个算法,对于给定的工作费用,为每一个人都分配1 件不同的工作,并使总费用达到最小。 3.算法描述(包括解空间,画出测试样例的解空间树,剪枝(约束函数或限界函数)方法描述) 如图所示 ...
分类:
编程语言 时间:
2018-12-24 18:59:28
阅读次数:
212
恢复内容开始 1.实践题目 :工作分配问题 2.问题描述:设有n件工作分配给n个人。将工作i分配给第j个人所需的费用为cij 。 设计一个算法,对于给定的工作费用,为每一个人都分配1 件不同的工作,并使总费用达到最小。 3.算法描述(包括解空间,画出测试样例的解空间树,剪枝(约束函数或限界函数)方法 ...
分类:
编程语言 时间:
2018-12-24 11:18:21
阅读次数:
199
1.实践题目 工作分配问题 2.问题描述 设有n件工作分配给n个人。将工作i分配给第j个人所需的费用为cij 。 设计一个算法,对于给定的工作费用,为每一个人都分配1 件不同的工作,并使总费用达到最小。 3.算法描述(包括解空间,画出测试样例的解空间树,剪枝(约束函数或限界函数)方法描述) 剪枝:每 ...
分类:
其他好文 时间:
2018-12-24 00:15:03
阅读次数:
103
实践题目 :工作分配问题 问题描述:设有n件工作分配给n个人。将工作i分配给第j个人所需的费用为cij 。 设计一个算法,对于给定的工作费用,为每一个人都分配1 件不同的工作,并使总费用达到最小。 算法描述:剪枝后的解空间树如下(原解空间每一父节点都有三个子节点,分别对应第1、2、3个工作的费用) ...
分类:
编程语言 时间:
2018-12-23 22:08:31
阅读次数:
200
一、实践题目(工作分配问题) 二、问题描述 有n件工作分配给n个人。将工作i分配给第j个人所需的费用为cij 。 设计一个算法,对于给定的工作费用,为每一个人都分配1 件不同的工作,并使总费用达到最小。 三、算法描述 1.解空间树 2.剪枝方法描述 if (cc+a[i][x[j]]<bestc){ ...
分类:
其他好文 时间:
2018-12-23 20:50:56
阅读次数:
125