leetcode
迷迷糊糊本人
这个作者很懒,什么都没留下…
展开
-
leetcode--动态规划
动态规划的思想 动态规划的思想是找出问题之间的联系,记录之前子问题的答案以解答更大规模问题。动态规划往往用于优化递归问题,例如斐波那契数列,如果运用递归的方式来求解会重复计算很多相同的子问题,利用动态规划的思想可以减少计算量。 动态规划的步骤 确定动态规划状态 确定状态转移方程(即找出问题之间的联系) 考虑初始化条件 考虑输出条件 考虑优化时间、空间复杂度 应用 DataWhale动态规划 有了四步解题法模板,再也不害怕动态规划! (进阶版)有了四步解题法模板,再也不害怕动态规划! ...原创 2021-06-10 11:17:24 · 69 阅读 · 0 评论 -
leetcode--分治算法
分治法的思想 把一个复杂的问题递归地分成若干子问题,知道子问题满足边界条件,停止递归。将子问题逐个击破,再将解决的子问题合并,得到原问题的答案。 分治法使用的情况 该问题的规模缩小到一定的程度就可以容易地解决 该问题可以分解为若干个规模较小的相同问题,即该问题具有最优子结构性质。 利用该问题分解出的子问题的解可以合并为该问题的解; 该问题所分解出的各个子问题是相互独立的,即子问题之间不包含公共的子子问题。 【注】:第三条特征是关键,能否利用分治法完全取决于问题是否具有第三条特征,如果具备了第一条和第二条特原创 2021-06-01 19:58:50 · 196 阅读 · 0 评论