代码改变世界

算法第5章上机实践报告

2018-12-23 19:53 by 秤字逃, 161 阅读, 0 推荐, 收藏, 编辑
摘要:一、实践题目 工作分配问题 二、问题描述 设有n件工作分配给n个人。将工作i分配给第j个人所需的费用为cij 。 设计一个算法,对于给定的工作费用,为每一个人都分配1 件不同的工作,并使总费用达到最小。 输入格式:输入数据的第一行有1 个正整数n (1≤n≤20)。接下来的n行,每行n个数,表示工作 阅读全文

算法第5章作业

2018-12-23 19:37 by 秤字逃, 139 阅读, 0 推荐, 收藏, 编辑
摘要:一、对回溯法的理解 回溯法的基本思想是穷举问题的所有可能解,然后在其中找到我们想要的答案。但是如果只是简单的穷举的话时间复杂度会很高,因此我们需要有一定的选择策略,即我们说的剪枝,通过合理的判断条件剔除没有必要的列举,以提高算法的效率。 二、“子集和”问题的解空间结构和约束函数 解空间结构:我们对于 阅读全文

算法第4章作业

2018-12-02 17:18 by 秤字逃, 126 阅读, 0 推荐, 收藏, 编辑
摘要:一、对贪心算法的理解 贪心算法之所谓称为“贪心”,就是每一次选择都是选择目前看起来最好的选择。但是这种选择是由前提的,首先是问题具有最优子结构,能让我们每一次的贪心都向结果更近一步。其次就是如何“贪心”要选择好,只有选对了,我们才能得到我们想要的答案。 二、汽车加油贪心选择策略 虽然我们汽车的最终目 阅读全文

算法第4章实践报告

2018-12-02 17:03 by 秤字逃, 255 阅读, 0 推荐, 收藏, 编辑
摘要:一、实践问题 7-1 最优合并问题 二、问题描述 给定k 个排好序的序列, 用 2 路合并算法将这k 个序列合并成一个序列。 假设所采用的 2 路合并算法合并 2 个长度分别为m和n的序列需要m+n-1 次比较。 试设计一个算法确定合并这个序列的最优合并顺序,使所需的总比较次数最少。 为了比较,还需 阅读全文

算法第3章上机实践报告

2018-11-22 09:22 by 秤字逃, 167 阅读, 0 推荐, 收藏, 编辑
摘要:一、实践题目 编辑距离问题 二、问题描述 设A和B是2个字符串。要用最少的字符操作将字符串A转换为字符串B。 字符操作包括 (1)删除一个字符; (2)插入一个字符; (3)将一个字符改为另一个字符。 将字符串A变换为字符串B所用的最少字符操作数称为字符串A到 B的编辑距离,记为d(A,B)。 对于 阅读全文

第三章作业

2018-11-11 23:30 by 秤字逃, 102 阅读, 0 推荐, 收藏, 编辑
摘要:一、对动态规划的理解 动态规划的“动态”二字体现在求解问题过程中对于输出结果的不断调整。为达到调整这一目的,我们需要找到求解问题的状态转移方程,通过该方程进行判断选择,从而对输出结果进行调整,最终得到我们需要的结果。 二、两道编程题的递归方程 1. a[i]=max(a[j]+1,a[i])[j<i 阅读全文

第二章上机实践报告

2018-10-20 21:37 by 秤字逃, 184 阅读, 0 推荐, 收藏, 编辑
摘要:一、实践题目 改写二分搜索算法 二、问题描述 设a[0:n-1]是已排好序的数组,请改写二分搜索算法,使得当x不在数组中时,返回小于x的最大元素位置i和大于x的最小元素位置j。当搜索元素在数组中时,i和j相同,均为x在数组中的位置。 输入格式:输入有两行,第一行是n值和x值; 第二行是n个不相同的整 阅读全文

第二章作业及结对编程情况

2018-10-19 09:27 by 秤字逃, 230 阅读, 0 推荐, 收藏, 编辑
摘要:一、作业情况 第二章作业主要考察的是算法的时间复杂度分析,分治法思想和排序方法。分为判断题,选择题和编程题考察。 在算法的时间复杂度分析上,需要我们对各种算法有一个比较好的掌握,很多时候是记不住的,需要我们思考算法过程来记住那个时间复杂度。而对于分治法也可以使用主规则进行运算。 在编程题第一题中我们 阅读全文