2025-10-27:K 条边路径的最大边权和。用go语言,给定一个有向无环图(节点编号为 0 到 n−1),图的边用一个二维数组 edges 表示,其中每个元...
2025-10-24:魔法序列的数组乘积之和。用go语言,给定一个整数 m、一个整数 k 以及一个数组 nums(长度记作 n)。考虑长度为 m 的下标序列 s...
2025-10-23:合并得到最小旅行时间。用go语言,给出一条总长为 l 公里、两端已标记的直路;有 n 个路标和一个整数 k,以及两个长度为 n 的数组 p...
2025-10-16:有向无环图中合法拓扑排序的最大利润。用go语言,给定一个由 n 个节点(编号 0 到 n-1)构成的有向无环图,边集合用二维数组 edge...
2025-09-28:使 K 个子数组内元素相等的最少操作数。用go语言,给定一个整数数组 nums 和两个整数 x、k。
2025-09-05:长度至少为 M 的 K 个子数组之和。用go语言,给定一个整数数组 nums 和两个整数 k、m,要求在数组中选出 k 段互不重叠的连续区...
2025-09-04:至多 K 次操作后的最长回文子序列。用go语言,给定一个字符串 s 和一个整数 k。你可以最多进行 k 次单步修改:每次选定字符串中的某个...
2025-09-01:移除所有数组元素的最小代价。用go语言,给定一个整数数组 nums,要求通过若干次操作把数组清空,并使总费用最小化。实现时在函数内部用一个...
亲爱的同学们,大家好!今天我们要一起探索一个非常经典且在面试中高频出现的算法问题——最大矩形。这个问题不仅是动态规划和单调栈的绝佳应用案例,还能锻炼我们的算法思...
编辑距离是动态规划中的经典难题,通过学习它,你可以深入理解动态规划的核心思想:将复杂问题分解为子问题,并利用子问题的解构建最终解。这种思想在算法设计中极为重要。...
亲爱的同学们,大家好呀!👋 今天我要和大家分享一个超级经典的算法问题——最长递增子序列(Longest Increasing Subsequence,简称LIS...
作为一名Java教师,我发现很多同学在学习动态规划时常常感到困惑,觉得这是一个难以攻克的难题。今天,我将用最通俗易懂的语言,带你一步步掌握打家劫舍问题的解法,让...
这个问题是动态规划的经典入门案例,通过它可以理解动态规划的基本思想:将复杂问题分解为简单子问题,并利用子问题的解构建最终解。这种思想在算法设计中极为重要。?
亲爱的同学们,大家好!👋 今天我要和大家分享一个算法界的"明星问题"——爬楼梯问题。这个问题不仅是力扣(LeetCode)上的经典题目,也是各大公司技术面试的常...
这个问题看似简单,却蕴含着丰富的算法思想,特别是动态规划的精髓。作为一名Java初学者,掌握这个问题不仅能帮助你理解动态规划的基本思路,还能为你未来学习更复杂的...
本题是动态规划的经典题目,重点在于理解动态规划的解题思路。对于第i个台阶,只能从i-1或者i-2个台阶跳上来,因此递推公式是:dpi = dpi - 1 + d...
由于本题给出了斐波那契数列的递推公式(数学表达式),因此只需要套用模板写出代码即可。本题的重点在于模板如何如何应用到动态规划的题目中。
本文介绍利用动态规划可计算字符串的相似度,通过 LCS Substring 判断最长公共子串,通过 LCS Subsequence 获得更完整的共同序列,用于提...
这个看似简单的模型,却可以衍生出许多变种,广泛应用于资源分配、投资决策、项目选择等现实问题中。
要知道递归和动态规划通常可以互相转化。在讲动态规划之前需要说明一下,动态规划并不是该题的最优解,复杂度为