摘要: 1、对回溯算法的理解 回溯法的使用也是对树的使用,对子树搜索,然后分别根据情况进入左或右子树。并且还要加一个边界用来约束是否要搜索这个结点,从而减少计算量。 2、学习算法课程的收获 大一的下学期很少使用C++,算法这门课程帮我把忘记的C语言又重新使用起来。 实用的算法帮助我更快解决一些问题,比如说二 阅读全文
posted @ 2020-12-18 21:26 zedzy 阅读(75) 评论(0) 推荐(0) 编辑
摘要: 1.对贪心算法的理解 贪心算法时在解决问题时,总是做出最好的选择。比如说当背包空间有限时,选择最有价值的物品,考虑的是局部的最优而不是整体。 贪心算法解题步骤: 1)将问题分解为若干个子问题 2)解决子问题,将子问题的最优解求出 3)把子问题的最优解合成 2.请选择一道作业题目说明你的算法满足贪心选 阅读全文
posted @ 2020-11-14 19:56 zedzy 阅读(73) 评论(0) 推荐(0) 编辑
摘要: 单调递增最长子序列 1.1递归方程式:m[i]=max(m[j])+1 1.2 一维 填表范围:0到n 填表顺序:从左到右 1.3 时间复杂度:O(n^2) 空间复杂度:n 对动态规划的了解 动态规划法主要分4个步骤,先找出最优解的特征,第二写出它的递归方程式,第三是自底向上算出子结构的最优解,最后 阅读全文
posted @ 2020-10-30 22:34 zedzy 阅读(90) 评论(0) 推荐(0) 编辑
摘要: 分治法的思想就是将一个复杂的问题简单化。 首先将一个大的问题问题分成同类的子问题,如果子问题可以再次化成更小的子问题,就需要再进行分解,再分别对子问题进行求解。最后又再次将子问题合并,得出原复杂问题的解。 这样就可以缩短求解问题的时间缩短,用更简单的方法求解。大大缩短的时间复杂度。这个算法思想在处理 阅读全文
posted @ 2020-10-02 23:59 zedzy 阅读(85) 评论(0) 推荐(0) 编辑
摘要: 我打算采用的是谷歌的代码规范 https://blog.csdn.net/freeking101/article/details/78930381 《数学之美》这本书中提到了不同的数学模型,通过不同的数学模型以及结合信息的传递等的操作。我了解到算法是为了优化软件的运行速度,提高软件的效率。算法是程序 阅读全文
posted @ 2020-09-16 22:40 zedzy 阅读(110) 评论(0) 推荐(0) 编辑