
力扣刷题
力扣刷题
~风起~
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
LeetCode刷题(006)——买卖股票
在第 2 天(股票价格 = 1)的时候买入,在第 5 天(股票价格 = 6)的时候卖出,最大利润 = 6-1 = 5。注意利润不能是 7-1 = 6, 因为卖出价格需要大于买入价格;同时,你不能在买入前卖出股票。返回你可以从这笔交易中获取的最大利润。如果你不能获取任何利润,返回。设计一个算法来计算你所能获取的最大利润。在这种情况下, 没有交易完成, 所以最大利润为 0。买入这只股票,并选择在。原创 2025-04-27 09:00:00 · 168 阅读 · 0 评论 -
LeetCode刷题(005)——多数元素
尝试设计时间复杂度为 O(n)、空间复杂度为 O(1) 的算法解决此问题。你可以假设数组是非空的,并且给定的数组总是存在多数元素。,返回其中的多数元素。多数元素是指在数组中出现次数。原创 2025-04-27 09:00:00 · 204 阅读 · 0 评论 -
Leetcode刷题(004)——删除有序数组中的重复项(II)
函数应返回新长度 length = 7, 并且原数组的前七个元素被修改为 0, 0, 1, 1, 2, 3, 3。不需要考虑数组中超出新长度后面的元素。函数应返回新长度 length = 5, 并且原数组的前五个元素被修改为 1, 1, 2, 2, 3。不需要考虑数组中超出新长度后面的元素。方式传递的,这意味着在函数里修改输入数组对于调用者是可见的。// 根据你的函数返回的长度, 它会打印出数组中。// 在函数里修改输入数组对于调用者是可见的。不要使用额外的数组空间,你必须在。,返回删除后数组的新长度。原创 2025-04-26 09:00:00 · 325 阅读 · 0 评论 -
Leetcode刷题(001)——合并两个有序数组
nums1 中仅存的 0 仅仅是为了确保合并结果可以顺利存放到 nums1 中。排序序列长度为 m+n,套用快速排序的时间复杂度即可,平均情况为 O((m+n)log(m+n))。排序序列长度为 m+n,套用快速排序的空间复杂度即可,平均情况为 O(log(m+n))。时间复杂度:O((m+n)log(m+n))。,5,6] ,其中斜体加粗标注的为 nums1 中的元素。空间复杂度:O(log(m+n))。需要合并 [1,2,3] 和 [2,5,6]。需要合并的数组是 [] 和 [1]。原创 2025-04-25 09:00:00 · 178 阅读 · 0 评论 -
Leetcode刷题(2)——移除元素
我们将数组中不等于val的元素一次插入到nums中,这样既避免了重新申请一个空数组,减少了资源的利用,又减少了时间复杂度。你的函数应该返回 k = 5,并且 nums 中的前五个元素为 0,0,1,3,4。你在返回的 k 个元素之外留下了什么并不重要(因此它们并不计入评测)。你在返回的 k 个元素之外留下了什么并不重要(因此它们并不计入评测)。你的函数函数应该返回 k = 2, 并且 nums。元素的顺序可能发生改变。注意这五个元素可以任意顺序返回。中的前两个元素均为 2。原创 2025-04-25 09:00:00 · 151 阅读 · 0 评论