刚开始做leetcode上的题,可以输出正确结果,但总是超时,怎么解决?

刚开始做leetcode上的题,可以输出正确结果,但总是超时,怎么解决?https://www.zhihu.com/question/34912389

很多时候,Leetcode上的题都有一个简单直观的解题思路,比如这道题(121. Best Time to Buy and Sell Stock,买卖股票的最佳时机)
题目是:给出一个数组表示每日股价,要求找出买入和卖出最好的时机,使得利润最大,输出最大利润。必须先低价买,再高价卖,找最大收益。
比如:Input: [7, 1, 5, 3, 6, 4]
Output: 5
最大利润为在Input[1]=1时买入,在Input[4]=6时卖出。

常见想法是:先选择所有数中最大和最小的,然后判断是否可行,如果不可行就尝试次大和次小的数字,算法时间复杂度为O(N^2)

如果学过算法导论,利用动态规划,每次读一个数据,刷新最低值和最大利润。时间复杂度是O(N),空间复杂度是O(0)

写代码本身是很容易的事情。Leetcode上更多的是挑战优化的极限。我的Leetcode是https://leetcode.com/xiaoxiaoyao/,欢迎一起学习

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 背景 一年多以前我在知乎上答了有关LeetCode的问题, 分享了一些自己做题目的经验。 张土汪:刷leetcod...
    土汪阅读 14,357评论 0 33
  • LeetCode 刷题随手记 - 第一部分 前 256 题(非会员),仅算法题,的吐槽 https://leetc...
    蕾娜漢默阅读 18,219评论 2 36
  • tags: 算法, LeetCode, swift, 动态规划 这是最近在学算法中完成的第一个系列题,系列题...
    pointertan阅读 6,852评论 0 0
  • 儿子经常在沙发上和我“疯”玩,小朋友“疯”起来的时候是没度的,一会儿来咬你一口,一会儿来戳你一下,一会儿爬到你身上...
    加减法cl阅读 2,350评论 4 6
  • 星期四,老师带我们去了鸠山红叶谷,首先我们在校车上一路唱歌,我唱的是《酒干倘卖无》。 然后,我们下车发了水。就去观...
    李佳诺阅读 4,233评论 0 0

友情链接更多精彩内容