摘要: 1.你对贪心算法的理解 我觉得贪心算法并不从整体最优上加以考虑,所做的选择只是在某种意义上的局部选择。贪心算法比较简单,直接,而且解题效率高。贪心算法的两个重要性质:贪心选择性质和最优子结构性质,熟练掌握这两个点是轻松运用贪心算法的关键。 2.请说明汽车加油问题的贪心选择性质 每次都等到不足够油到下 阅读全文
posted @ 2019-11-21 22:58 周灏宇 阅读(139) 评论(0) 推荐(0) 编辑
摘要: 1. 实践题目 4-2 删数问题 2. 问题描述 给定n位正整数a,去掉其中任意k≤n 个数字后,剩下的数字按原次序排列组成一个新 的正整数。对于给定的n位正整数a和正整数 k,设计一个算法找出剩下数字组成的新数最 小的删数方案。 3. 算法描述 用一个字符串记录输入的正整数。每一次删掉的数字是当前 阅读全文
posted @ 2019-11-19 23:38 周灏宇 阅读(134) 评论(0) 推荐(0) 编辑
摘要: 1.你对动态规划算法的理解 动态规划算法的几个基本要素是解体的关键,其中递归方程只是其中一个重要的解题方法,而对最优子结构和重叠子问题是其重要性质。 2.分别列出编程题1、2的递归方程 编程题1:m [ i ] = max { m [ k ] (a [ k ] < a [ i ] ) } ( 1 < 阅读全文
posted @ 2019-11-03 21:10 周灏宇 阅读(101) 评论(0) 推荐(0) 编辑
摘要: 1.实践题目 7-2 最大子段和 2.问题描述 给定n个整数(可能为负数)组成的序列a[1],a[2],a[3],…,a[n],求该序列如a[i]+a[i+1]+…+a[j]的子段和的最大值。当所给的整数均为负数时,定义子段和为0。 要求算法的时间复杂度为O(n)。 3.算法描述 #include< 阅读全文
posted @ 2019-10-19 22:56 周灏宇 阅读(150) 评论(0) 推荐(0) 编辑
摘要: 1.请谈一下你对分治思想的体会 分治法的思想就是将一个规模为n的问题分解为k个规模较小的子问题,我觉得这是一种非常实用且通俗易懂的方法。通过不断的运用也让我能更加轻松地解题,这种思想在未来我对算法的学习会有很大帮助。 2.结对编程情况汇报 虽然我因为病假没来参加上机,但在课后我和队友有过进一步的交流 阅读全文
posted @ 2019-10-12 17:17 周灏宇 阅读(120) 评论(0) 推荐(0) 编辑
摘要: 1.实践题目: 7-1 二分查找 2.问题描述: 输入n值(1<=n<=1000)、n个非降序排列的整数以及要查找的数x,使用二分查找算法查找x,输出x所在的下标(0~n-1)及比较次数。若x不存在,输出-1和比较次数。 3.算法描述: #include<iostream> using namesp 阅读全文
posted @ 2019-09-26 13:34 周灏宇 阅读(130) 评论(0) 推荐(0) 编辑
摘要: 1.请上网了解编码规范,说明你本学期的编码遵循哪个规范及该规范的链接。 (1)命名空间规范 namespace 关键字使得我们可以通过创建作用范围来对全局命名空间进行分隔。本质上来讲,一个命名空间就定义了一个范围。定义命名空间时应尽量使用大写的英文单词或单词缩写。 (2)文件命名规范 文件主体名必须 阅读全文
posted @ 2019-09-03 23:54 周灏宇 阅读(197) 评论(0) 推荐(0) 编辑