摘要: 题目链接 解题思路 方法一:暴力递归,process(i, j),当前在[i, j]位置,到达右下角有多少种方法? 如果i < m - 1,那么可以往下走,所以结果加process(i + 1, j) 如果j < n - 1,那么可以往右走,所以结果加process(i, j + 1) 因为只有两个 阅读全文
posted @ 2024-11-10 22:08 ouyangxx 阅读(17) 评论(0) 推荐(0)
摘要: 题目链接 解题思路 最大子数组问题,有两个基本的想法,以i开头的子数组结果是怎样的,求出所有的结果,最优的那个,就是答案;以i结尾的子数组结果是怎样的,求出所有的结果,最优的那个,就是答案。 本题我们可以考虑,「以i结尾的结果是怎样的」,为啥?因为我们要求的是最大的累加和,我们求出了res1=「以i 阅读全文
posted @ 2024-11-10 21:35 ouyangxx 阅读(13) 评论(0) 推荐(0)
摘要: 题目链接 解题思路 合并区间,肯定要按照第一维度排序。 然后依次处理每个区间。假设现在来到i区间[a, b],i之前的区间已经处理好,并且与i区间不重叠。i + 1的区间是[c, d],因为已经按照第一维度排序,所以能够得到a >= c,那么,b和c的关系如何? b < c:说明i区间与i+1区间不 阅读全文
posted @ 2024-11-10 21:31 ouyangxx 阅读(8) 评论(0) 推荐(0)
摘要: 题目链接 解题思路 方法一:(注:这种方法过不了,提供一种思路,如果只想过题,可直接跳转到方法二)自顶向下的动态规划,先写暴力递归过程,然后再直接加缓存表即可。 bool process(nums, index, next) nums:固定参数 index:当前来到的下标 next:能够走到的最远的 阅读全文
posted @ 2024-11-10 21:29 ouyangxx 阅读(28) 评论(0) 推荐(0)
摘要: 题目链接 解题思路 合并区间,肯定要按照第一维度排序。 然后依次处理每个区间。假设现在来到i区间[a, b],i之前的区间已经处理好,并且与i区间不重叠。i + 1的区间是[c, d],因为已经按照第一维度排序,所以能够得到a >= c,那么,b和c的关系如何? b < c:说明i区间与i+1区间不 阅读全文
posted @ 2024-11-10 21:20 ouyangxx 阅读(25) 评论(0) 推荐(0)