01 2024 档案
摘要:Problem: 42. 接雨水 目录思路解题方法复杂度Code 思路 作为自己独立完成的第一道困难题,我觉得有必要纪念一下。就是单调栈的思路,不过需要减去栈中的每一项才是雨水的体积。最后一个因为不是柱子,所以在结束循环时可能会出现栈未空的情况,需要倒着再考虑一遍。 解题方法 遇到比当前大的就改变l
阅读全文
摘要:Problem: 122. 买卖股票的最佳时机 II 目录思路解题方法复杂度Code 思路 仍然是一道比较简单的动态规划,但是一上手做还是没理清楚状态是什么。一天的状态只有两种,持有股票和没有股票,这样就可以列出状态转移方程\(dp[i][j]=max(dp[i-1][j],dp[i-1][j*]+
阅读全文
摘要:Problem: 189. 轮转数组 目录思路解题方法复杂度Code 思路 vocal O(1)的解法,太强了, 完全想不到是咋想到的 解题方法 三次递归交换,太妙了 复杂度 时间复杂度: 空间复杂度: Code class Solution
阅读全文
摘要:Problem: 169. 多数元素 目录思路解题方法复杂度Code 思路 这里选择采用摩尔投票的方式进行计算众数,这里众数的定义是超过一半的数, 假设众数的票为+1, 负数的票为-1, 则不难得到: 当目前的票数为0时, 后面的众数仍然是整个数组的众数. 根据这个性质设计算法 所有数的票面值和为正
阅读全文
摘要:题目描述 删除有序数组中的重复项 II 给你一个有序数组 nums ,请你 原地 删除重复出现的元素,使得出现次数超过两次的元素只出现两次 ,返回删除后数组的新长度。 不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。 说明: 为什么返回数值是整数,但输
阅读全文
摘要:题目描述 给你一个非严格递增排列 的数组 nums ,请你 原地 删除重复出现的元素,使每个元素 只出现一次 ,返回删除后数组的新长度。元素的 相对顺序 应该保持 一致 。然后返回 nums 中唯一元素的个数。 考虑 nums 的唯一元素的数量为 k ,你需要做以下事情确保你的题解可以被通过: 更改
阅读全文