摘要: 1、你对贪心算法的理解 贪心算法跟动态规划有点类似,都是将主问题分解成一个个的子问题,通过求解子问题来最终得出问题的答案。可是贪心算法更为直接,所以要当局部最优跟全局最优一致的时候,才能运用贪心算法得出正确的结果。 2、请说明汽车加油问题的贪心选择性质 依次累加行驶的公里数,当它超过可行驶公里数后就 阅读全文
posted @ 2018-11-30 23:20 倔强的不死人 阅读(96) 评论(0) 推荐(0) 编辑
摘要: 一、实践题目 数字三角形 二、问题描述 给定一个由 n行数字组成的数字三角形如下图所示。试设计一个算法,计算出从三角形 的顶至底的一条路径(每一步可沿左斜线向下或右斜线向下),使该路径经过的数字总和最大。 三、算法描述 定义一个二维数组来记录最短路径a[i][j]。从倒数第二行开始,比较m[i+1] 阅读全文
posted @ 2018-11-06 00:28 倔强的不死人 阅读(94) 评论(0) 推荐(0) 编辑
摘要: 一、你对动态规划算法的理解 动态规划算法即将待求解的问题分解转换为多个子问题,然后先去求解子问题,然后再对子问题的一步步求解中就能得到原问题的解。 二、分别列出编程题1、2的递归方程 (1)将问题转化为求两个序列的最长公共子序列X、Y C[i][j]为序列Xi和Yj的最长公共子序列的长度 0 i = 阅读全文
posted @ 2018-11-05 23:03 倔强的不死人 阅读(104) 评论(0) 推荐(0) 编辑
摘要: 1、实践题目 二分查找 2、问题描述 输入n值(1<=n<=1000)、n个非降序排列的整数以及要查找的数x,使用二分查找算法查找x,输出x所在的下标(0~n-1)及比较次数。若x不存在,输出-1和比较次数。 3、算法描述 定义search函数,递归的结束条件是(right < left),输出-1 阅读全文
posted @ 2018-10-14 20:41 倔强的不死人 阅读(105) 评论(0) 推荐(0) 编辑
摘要: 对二分法思想的体会 二分法的基本思想是将一个问题分解为多个规模较小的子问题,得到的子问题呢又与原问题相同。所以最后一步步递归地去解这些子问题,然后将各个子问题的解合并起来,就可以得到原问题的解了。 在程序编写上也主要是确定好终止的条件,然后在未达到终止条件的时候进行递归求解。 虽然在程序编写上更加简 阅读全文
posted @ 2018-10-09 00:37 倔强的不死人 阅读(112) 评论(0) 推荐(0) 编辑
摘要: 这周学习到了许多C++的运算符和表达式计算的规则与顺序,也终于了解到了二进制与十进制间的转换关系。 最有成就感的就是用程序来解决了数学问题。 #include<iostream> using namespace std; int main(){ int x,y; cout<<"x="; cin>>x 阅读全文
posted @ 2017-09-24 17:28 倔强的不死人 阅读(64) 评论(0) 推荐(0) 编辑