2019年11月25日
摘要: 1.对贪心算法的理解 从初始解开始出发,每次选择都是选择最佳的,从而达到整体较好的效果,大部分情况下得到的解跟最优解相近,不过在某些情况下跟最优解相差较大。 2.请说明汽车加油问题的贪心选择性质 刚开始油是满的,出发时需要比较车的剩余油量与去下一站的耗油量的大小,如果剩余量大则可以去下一站并减去耗油 阅读全文
posted @ 2019-11-25 20:21 mars0604 阅读(122) 评论(0) 推荐(0) 编辑
  2019年11月18日
摘要: 1. #include <iostream> #include <algorithm> using namespace std; int n,L,l[2000],m=0; void findmax(){ int restL=L; int i=0; while(i<n && restL>0){ if( 阅读全文
posted @ 2019-11-18 23:02 mars0604 阅读(198) 评论(0) 推荐(0) 编辑
  2019年11月3日
摘要: 一、对动态规划的理解 基本思想:把所要求解的问题划分为许多个子问题,但子问题之间是有联系,最后求出子问题的最优解即原问题的最优解了。 (与分治法不同的是,需要求得每次子问题最后得出最优解。) 具体步骤: 1、划分子问题,确定子问题边界 2、推得方程式 3、求出边界条件 4、填表 二、 #includ 阅读全文
posted @ 2019-11-03 23:42 mars0604 阅读(115) 评论(0) 推荐(0) 编辑
  2019年10月23日
摘要: 7-1 数字三角形 (30 分) 7-1 数字三角形 (30 分) 7-1 数字三角形 (30 分) 给定一个由 n行数字组成的数字三角形如下图所示。试设计一个算法,计算出从三角形 的顶至底的一条路径(每一步可沿左斜线向下或右斜线向下),使该路径经过的数字总和最大。 输入格式: 输入有n+1行: 第 阅读全文
posted @ 2019-10-23 07:28 mars0604 阅读(113) 评论(0) 推荐(0) 编辑
  2019年10月16日
摘要: 分治法的基本思想其实就是将一个规模为N的问题分解为k个规模较小的子问题,这些子问题互相独立且与原问题相同。从而递归地解这些子问题,然后将各子问题的解合并并得到原问题的解。一般在分治法中和基础的程序是递归算法。分治法可以分为三步:分解问题、解决子问题、合并子问题的解。 其中分治法中我认为较为重要的例子 阅读全文
posted @ 2019-10-16 19:51 mars0604 阅读(245) 评论(0) 推荐(0) 编辑
  2019年9月22日
摘要: 对于二分法的心得 算法时间及空间复杂度分析: 二分搜索算法函数的时间及空间复杂度。在每一次迭代递归中,数组被分成一半,所以函数执行了O(log2n) 次,函数中基本操作所执行的次数为n/2+log2n+n/2,每一次执行常数级别O (1)次,所以时间复杂度在最坏情况下为O(log2n),故该算法时间 阅读全文
posted @ 2019-09-22 23:34 mars0604 阅读(162) 评论(0) 推荐(0) 编辑
  2019年9月8日
摘要: 1、代码规范http://kb.cnblogs.com/page/148249/ 2、对于这本书,虽早闻其大名,但假如不是这次作业要求,那离我翻开这本书的那天不然还有还有很长的时间。其实在未开始阅读前,仅看题目,我一直认为这不过是一本与数学有关的书,翻开之后我才发现,这确实是一本和数学有关的书,但其 阅读全文
posted @ 2019-09-08 15:58 mars0604 阅读(119) 评论(0) 推荐(0) 编辑