摘要: 你对回溯算法的理解(2分) 你对回溯算法的理解(2分) 回溯算法说白了就是穷举法。不过回溯算法使用剪枝函数,剪去一些不可能到达 最终状态(即答案状态)的节点,从而减少状态空间树节点的生成。回溯法是一个既带有系统性又带有跳跃性的的搜索算法。它在包含问题的所有解的解空间树中,按照深度优先的策略,从根结点 阅读全文
posted @ 2018-12-24 16:46 灬小小苏灬 阅读(125) 评论(0) 推荐(0) 编辑
摘要: 实践题目 :工作分配问题 问题描述 设有n件工作分配给n个人。为第i个人分配工作j所需的费用为c[i][j] 。试设计一个算法,计算最佳工作分配方案,为每一个人都分配1 件不同的工作,并使总费用达到最小。由于每个人都必须分配到工作,在这里可以建一个二维数组c[i][j],用以表示i号工人完成j号工作 阅读全文
posted @ 2018-12-24 16:18 灬小小苏灬 阅读(132) 评论(0) 推荐(0) 编辑
摘要:  提交作业  提交作业 实践报告任选一题进行分析。内容包括: 实践题目 7-1 最优合并问题 2. 问题描述 给定k 个排好序的序列, 用 2 路合并算法将这k 个序列合并成一个序列。 假设所采用的 2 路合并算法合并 2 个长度分别为m和n的序列需要m+n-1 次比较。试设 计一个算法确定合并 阅读全文
posted @ 2018-12-02 11:55 灬小小苏灬 阅读(171) 评论(0) 推荐(0) 编辑
摘要: 你对贪心算法的理解(2分) 贪心算法是一步一步往下走的,常以当前情况为基础根据某个优化测度作最优选择,而不考虑各种可能的整体情况,它省去了为找最优解要穷尽所有可能而必须耗费的大量时间,它采用自顶向下,以迭代的方法做出相继的贪心选择,每做一次贪心选择就将所求问题简化为一个规模更小的子问题,通过每一步贪 阅读全文
posted @ 2018-12-02 08:39 灬小小苏灬 阅读(104) 评论(0) 推荐(0) 编辑
摘要: 实践报告任选一题进行分析。内容包括: 最大子段和 给定n个整数(可能为负数)组成的序列a[1],a[2],a[3],…,a[n],求该序列如a[i]+a[i+1]+…+a[j]的子段和的最大值。当所给的整数均为负数时,定义子段和为0。 要求算法的时间复杂度为O(n)。 for(i=1;i<=n;i+ 阅读全文
posted @ 2018-11-10 11:13 灬小小苏灬 阅读(112) 评论(0) 推荐(0) 编辑
摘要: 1、对动态规划算法的理解 1、对动态规划算法的理解 动态规划算法要求我们找出题目中的最优解的性质,并且递归的定义最优值,根据递归式自下而上的解决问题。这个算法和分治法类似,将问题分成不同的子问题,再从子问题中得到原问题的解。动态规划算法不同于分治法的地方是,分治法会重复计算子问题,而动态规划会设置备 阅读全文
posted @ 2018-10-29 22:44 灬小小苏灬 阅读(104) 评论(0) 推荐(0) 编辑
摘要: 实践报告任选一题进行分析。内容包括: 输入n值(1<=n<=1000)、n个非降序排列的整数以及要查找的数x,使用二分查找算法查找x,输出x所在的下标(0~n-1)及比较次数。若x不存在,输出-1和比较次数。 输入格式: 输入共三行: 第一行是n值; 第二行是n个整数; 第三行是x值。 输出格式: 阅读全文
posted @ 2018-10-14 11:52 灬小小苏灬 阅读(153) 评论(0) 推荐(1) 编辑
摘要:  提交作业  提交作业 1、请谈一下你对二分法思想的体会 二分法的基本思想是首先选定数据中间位置的数与所查数比较,若不符合要求,可以先比较选定的数和所查数的大小,然后在选定数的前或者后的数据区域里再一次选择居中的数,重复上述过程直到选择成功。通过递归或循环的方式用二分法查找时每次范围都会缩小一半 阅读全文
posted @ 2018-10-10 12:26 灬小小苏灬 阅读(102) 评论(0) 推荐(0) 编辑