1 问题描述860.柠檬水找零 2 解题思路创建一个数组,表示手中的5元纸币、10元纸币、20元纸币的数目,当其中5元纸币数目小于0,说明无法找零
1 问题描述135.分发糖果 2 解题思路本题的关键在于,需要一次从前往后的遍历,第一次确定最少糖果数,同时还需要从后往前遍历,再一次确定最少糖果
1 问题描述1005.K次取反后最大化的数组和 2 解题思路贪心算法 3 代码 cpp class Solution { static bool cmp(int a, int b) { return abs(a) > abs(b); } public: int largestSumAfterKNegations(vector<int>& A, int K) { sort(A.begin(), A.end(), cmp); // 第一步 for (int i = 0; i
1 问题描述45.跳跃游戏II 2 解题思路外循环还是从末尾向前遍历,内循环从前往后遍历,每次找能到达终点的索引最小的位置,该位置作为新的终点,同
1 问题描述55.跳跃游戏 2 解题思路从后向前遍历,只要nums[j]能由nums[j - 1]或者更前面的点跳到,那么终点就从nums[j]变成n
1 问题描述72.编辑距离 2 解题思路dp[i][j]的含义不再赘述: if (word1[i - 1] == word2[j - 1]) dp[i][j] = dp[i - 1][j - 1]; else,分为三种操作情况: 替换末尾字符: dp[i][j]
1 问题描述583.两个字符串的删除操作 2 解题思路dp[i][j]表示对word1的前i个字符,word2的前j个字符,使得它们相同的最小步数