摘要: 一、对回溯算法的理解 回溯法是一种选优搜索法,按选优条件向前搜索,以达到目标。但当探索到某一步时,发现原先选择并不优或达不到目标,就退回一步重新选择。 二、请说明“子集和”问题的解空间结构和约束函数 解空间结构:类似树,每一层都有两个选择,0代表不选,而1代表选。第n层则代表第n个数选不选。 约束函 阅读全文
posted @ 2018-12-23 19:00 YILINNN 阅读(119) 评论(0) 推荐(0) 编辑
摘要: 1、实践题目 工作分配问题 2、问题描述 设计一个算法,对于给定的工作费用,为每一个人都分配1 件不同的工作,并使总费用达到最小。 3、算法描述 限制函数保证了最后的解一定是最小值 4、心得体会 通过这次的上机实践课,我和同伴对回溯法都有了更深一步的了解,希望能够继续好好学习,用回溯法解决更多的问题 阅读全文
posted @ 2018-12-23 18:37 YILINNN 阅读(142) 评论(0) 推荐(0) 编辑
摘要: 1、实践题目:程序存储问题 2、题目形式:设有n 个程序{1,2,…, n }要存放在长度为L的磁带上。程序i存放在磁带上的长度是 li,1≤i≤n。 程序存储问题要求确定这n 个程序在磁带上的一个存储方案, 使得能够在磁带上存储尽可能多的程序。 对于给定的n个程序存放在磁带上的长度,计算磁带上最多 阅读全文
posted @ 2018-12-02 12:09 YILINNN 阅读(124) 评论(0) 推荐(0) 编辑
摘要: 一、对贪心算法的理解 贪心算法是指总是做出在当前看来是最好的选择,也就是说,不从整体最优上加以考虑,他所做出的是在某种意义上的局部的最优解。贪心选择是采用从顶向下、以迭代的方法做出相继选择,每做一次贪心选择就将所求问题简化为一个规模更小的子问题。 二、汽车加油的贪心选择性质 先将每个油站之间的距离跟 阅读全文
posted @ 2018-12-02 11:40 YILINNN 阅读(141) 评论(0) 推荐(0) 编辑
摘要: 一、实践题目 设A和B是2个字符串。要用最少的字符操作将字符串A转换为字符串B。这里所说的字符操作包括 (1)删除一个字符; (2)插入一个字符; (3)将一个字符改为另一个字符。 将字符串A变换为字符串B所用的最少字符操作数称为字符串A到 B的编辑距离,记为d(A,B)。 对于给定的字符串A和字符 阅读全文
posted @ 2018-11-09 12:27 YILINNN 阅读(509) 评论(0) 推荐(0) 编辑
摘要: 1、对动态规划的理解 动态规划即是用一个表来记录所有已解决的子问题的答案,不管该子问题以后是否被用到,只要被计算过,就可将其结果填入表中。且动态规划算法适用于解最优化问题。通常可按以下4个步骤设计: (1)找出最优解的性质,并刻画其结构特征 (2)递归地定义最优值 (3)以自底向上的方式计算出最优值 阅读全文
posted @ 2018-11-09 10:49 YILINNN 阅读(2592) 评论(0) 推荐(0) 编辑
摘要: 1、实践题目:7-1 二分查找 2、问题描述:输入n值(1<=n<=1000)、n个非降序排列的整数以及要查找的数x,使用二分查找算法查找x,输出x所在的下标(0~n-1)及比较次数。若x不存在,输出-1和比较次数。 3、算法描述:在给定元素排好顺序的前提下,用left表示最左边的数,以及用righ 阅读全文
posted @ 2018-10-15 20:30 YILINNN 阅读(221) 评论(0) 推荐(0) 编辑
摘要: 对二分法的思想体会: 二分法是一种效率较高的查找方法,在每一次查找后都使查找范围缩小一半,与顺序查找相比,很显然提高了查找效率,而且,二分法的思想并不难理解,方便去理解学习。 对于结对编程: 第一次体会编程也可以协作来完成,协作编程可以使我们发现平时编程中容易忽视的知识点,在不理解的时候,搭档会给我 阅读全文
posted @ 2018-10-15 20:05 YILINNN 阅读(214) 评论(0) 推荐(0) 编辑