1eHz
1eHz
全部文章
分类
归档
标签
去牛客网
登录
/
注册
1eHz的博客
全部文章
(共6篇)
题解 | #跳跃游戏(一)# ✅✅✅贪心解法、动态规划解法
关键词:贪心算法、动态规划动态规划解法:核心思想:动态规划解决,维护一个dp数组,其中dp[i]表示到达索引i时能到达的最远距离。解题步骤:创建大小为n的dp数组,初始值设为-1,表示这些位置不可达。初始化状态,设置dp[0]为nums[0],即从起始位置能到达的最远距离。对于每一个索引i(从1到n...
2024-10-28
3
160
题解 | #最长回文子序列# ✅✅✅经典二维DP秒杀
关键词:动态规划核心思想:使用动态规划来计算最长回文子序列的长度。通过构建一个二维数组 dp,其中 dp[i][j] 表示字符串 str 从索引 i 到 j 的最长回文子序列的长度。解题步骤:初始化一个二维数组 dp,其大小为 l x l(l 为字符串长度),所有元素初始化为0。对于每个单字符回文,...
2024-10-27
1
77
题解 | #滑雪# ✅✅✅记忆化搜索满分题解
关键词:DFS 、 记忆化搜索 、 动态规划核心思想:使用DFS结合记忆化搜索来解决问题。记忆化搜索可以避免重复计算已经访问过的节点,从而提高效率。解题步骤:读取输入,初始化矩阵 mat 存储滑雪场的高度信息,初始化 dp 数组用于存储从每个位置出发的最长滑道长度。初始化 dx 和 dy 数组表示四...
2024-10-27
1
88
题解 | #活动安排# ✅✅✅ 经典贪心满分题解
关键词:贪心算法核心思想:通过优先选择结束时间最早且与前一个选定活动不冲突的活动,来最大化可以安排的活动数量。解题步骤:将所有活动按结束时间升序排序。遍历每个活动,对于一个活动,如果它的开始时间晚于或等于上一个选中活动的结束时间,则安排此活动。复杂度:时间复杂度O(nlogn),空间复杂度O(n)。...
2024-10-26
1
113
题解 | #【模板】哈夫曼编码# ✅✅✅不构建哈夫曼树求解
关键词:哈夫曼编码 / 贪心算法核心思想:无需构建完整的哈夫曼树,可以利用贪心策略和优先队列(最小堆),直接算哈夫曼编码的最小成本WPL(编码后字符串的最短长度)。解题步骤:输入和初始化:读取每个字符的出现次数,并将其存入一个优先队列(最小堆)中。其中 greater<> 比较器确保队列...
2024-10-26
2
137
题解 | #相差不超过k的最多数# ✅✅✅ 双指针满分解法
关键词:双指针 / 滑动窗口核心思想:使用滑动窗口算法通过动态调整窗口的大小,遍历所有符合条件的连续子序列,求得最大连续子序列的长度。解题步骤:排序:首先对数组进行排序,以方便后续检查相邻元素之间的差值是否满足条件。滑动窗口:使用滑动窗口技术来找到满足条件的最长子序列。这里使用两个指针 l(左指针)...
2024-10-26
3
91