2018年12月23日

第5章作业

摘要: 一、你对回溯算法的理解 1、回溯算法就是一种有组织的系统最优化搜索技术,可以看作蛮力法穷举搜索的改进。回溯法常常可以避免搜索所有可能的解,所以它适用于求解组织数量较大的问题。 2、首先我们先了解一下一个基本概念“解空间树”:问题的解空间一般使用解空间树的方式来组织,树的根节点位于第1层,表示搜索的初 阅读全文

posted @ 2018-12-23 16:27 huangroumin 阅读(229) 评论(0) 推荐(0) 编辑

第5章上机实践报告

摘要: 1、实践题目 工作分配问题 2、问题描述 设有n件工作分配给n个人。将工作i分配给第j个人所需的费用为cij 。 设计一个算法,对于给定的工作费用,为每一个人都分配1 件不同的工作,并使总费用达到最小。 输入格式:输入数据的第一行有1 个正整数n (1≤n≤20)。接下来的n行,每行n个数,表示工作 阅读全文

posted @ 2018-12-23 13:55 huangroumin 阅读(244) 评论(0) 推荐(0) 编辑

2018年12月16日

0-1背包回溯

摘要: 还是先用到贪心:按单位重量价值由大到小排序 限界函数:假定可以装入部分,算出把背包装满的价值,作为上界 回溯函数:判断完这一层返回上一层 代码实现: 阅读全文

posted @ 2018-12-16 15:09 huangroumin 阅读(253) 评论(0) 推荐(0) 编辑

2018年12月2日

第4章作业

摘要: 1、对贪心算法的理解 从问题的某一个初始解出发,通过一系列的贪心选择-当前状态下的局部最优选择,逐步逼近给定的目标; 具有贪心选择性质和最优子结构性质; 1.1 贪心选择性质 其指全局最优解可以通过局部最优解来得到(这也是和动态规划的主要区别),动态规划的算法通常以自底向上的方式来解各种子问题,而贪 阅读全文

posted @ 2018-12-02 16:00 huangroumin 阅读(135) 评论(0) 推荐(0) 编辑

第4章上机实践报告

摘要: 7-1 最优合并问题 问题描述: 给定k 个排好序的序列, 用 2 路合并算法将这k 个序列合并成一个序列。 假设所采用的 2 路合并算法合并 2 个长度分别为m和n的序列需要m+n-1 次比较。试设 计一个算法确定合并这个序列的最优合并顺序,使所需的总比较次数最少。 为了进行比较,还需要确定合并这 阅读全文

posted @ 2018-12-02 11:51 huangroumin 阅读(208) 评论(0) 推荐(0) 编辑

2018年12月1日

贪心算法之背包问题

摘要: 问题描述:给定n种物品,1个背包,背包容量为c,每个物品i的价值为vi,重量为wi,如何选择装入物品能使背包的总价值最大? 注意:与0-1背包问题不同,在选择物品i装入背包时,可以选择物品i的一部分,而不一定要全部装入背包,1<=i<=n 形式化描述:给定c >0, wi >0, vi >0 , 1 阅读全文

posted @ 2018-12-01 17:17 huangroumin 阅读(15610) 评论(1) 推荐(2) 编辑

2018年11月28日

贪心算法之活动安排问题

摘要: 问题描述: 给定11个活动的开始时间和结束时间,问怎么安排能使安排的活动数最多? 贪心策略: 优先安排最早结束的活动 【优先安排最早开始的活动问题在于,当该活动的持续时间过长时,不是最优解】 【优先安排持续时间最短的活动问题在于,该活动可能跨过两个活动的结束和开始时间,不是最优解】 代码实现: 阅读全文

posted @ 2018-11-28 11:31 huangroumin 阅读(3923) 评论(0) 推荐(0) 编辑

2018年11月24日

动态规划之0-1背包问题

摘要: 问题描述:给定n种物品,1个背包,背包容量为c,每个物品i的价值为vi,重量为wi,如何选择装入物品能使背包的总价值最大? 注意:1)对于每个物品来说,只有两种选择,要么装,要么不装! 2)不能将物品i装入背包多次,也不能只装入部分物品! eg.c = 100 3种物品 1:v1 = 50 w1 = 阅读全文

posted @ 2018-11-24 17:12 huangroumin 阅读(476) 评论(0) 推荐(0) 编辑

2018年11月10日

第三章上机实践报告

摘要: 1、实践题目 数字三角形 2、问题描述 给定一个由 n行数字组成的数字三角形如下图所示。试设计一个算法,计算出从三角形 的顶至底的一条路径(每一步可沿左斜线向下或右斜线向下),使该路径经过的数字总和最大。 3、算法描述 采用自底向上的动态规划算法,设b[i][j]为从第n行到当前元素第i行第j列的最 阅读全文

posted @ 2018-11-10 17:39 huangroumin 阅读(145) 评论(0) 推荐(0) 编辑

算法第三章作业

摘要: 1、对动态规划的理解 能用动态规划解决的问题有两大特性:最优子结构特性、重叠子问题特性 最优子结构即:要求原问题的最优解,必先求子问题的最优解 重叠子问题即:在求各个子问题的最优解时会出现重复计算的情况 用动态规划解题的步骤: 1)分析最优子结构 2)建立递归关系,列出递归方程 3)计算最优值 4) 阅读全文

posted @ 2018-11-10 16:53 huangroumin 阅读(165) 评论(0) 推荐(0) 编辑

导航