题目

  • 假设把某股票的价格按照时间先后顺序存储在数组中,请问买卖该股票一次可能获得的最大利润是多少?

  • 示例 1:
    输入: [7,1,5,3,6,4]
    输出: 5
    解释: 在第 2 天(股票价格 = 1)的时候买入,在第 5 天(股票价格 = 6)的时候卖出,最大利润 = 6-1 = 5 。
    注意利润不能是 7-1 = 6, 因为卖出价格需要大于买入价格。

  • 示例 2:
    输入: [7,6,4,3,1]
    输出: 0
    解释: 在这种情况下, 没有交易完成, 所以最大利润为 0。

  • 限制:
    0 <= 数组长度 <= 10^5

  • leetcode链接:https://leetcode-cn.com/problems/gu-piao-de-zui-da-li-run-lcof/solution/


思路

  • 动态规划


/*** @param {number[]} prices* @return {number}*/
var maxProfit = function (prices) {if (!prices.length) return 0const haveDp = [-prices[0]]const noDp = [0]for (let i = 1; i < prices.length; i++) {haveDp[i] = Math.max(haveDp[i - 1], -prices[i])noDp[i] = Math.max(noDp[i - 1], haveDp[i - 1] + prices[i])}return noDp.pop()
}

剑指OFFER----63-1、股票的最大利润I(js实现)相关推荐

  1. 【LeetCode】剑指 Offer 63. 股票的最大利润

    [LeetCode]剑指 Offer 63. 股票的最大利润 文章目录 [LeetCode]剑指 Offer 63. 股票的最大利润 package offer;public class Soluti ...

  2. leetcode剑指 Offer 63. 股票的最大利润(动态规划)

    假设把某股票的价格按照时间先后顺序存储在数组中,请问买卖该股票一次可能获得的最大利润是多少? 示例 1: 输入: [7,1,5,3,6,4] 输出: 5 解释: 在第 2 天(股票价格 = 1)的时候 ...

  3. 【算法】剑指 Offer 63. 股票的最大利润

    1.概述 假设把某股票的价格按照时间先后顺序存储在数组中,请问买卖该股票一次可能获得的最大利润是多少? 示例 1: 输入: [7,1,5,3,6,4] 输出: 5 解释

  4. 【LeetCode笔记】121. 买卖股票的最佳时机 / 剑指 Offer 63. 股票的最大利润(Java、动态规划)

    文章目录 题目描述 代码 & 思路 初版代码 更新啦-优化代码 再次更新 题目描述 讲道理,一眼dp 代码 & 思路 时间复杂度O(n),不过可改进的地方还多,跑出来大概6ms. 初版 ...

  5. leetcode:剑指 Offer 63. 股票的最大利润【记录前缀最小和 or 无脑线段树】

    分析 无脑线段树记录后面的最大值 然后前缀最小和记录前面的最小值 无脑线段树 from functools import reduceclass SegTree:'''通用线段树 by AK自动机支持 ...

  6. 剑指 Offer 63. 股票的最大利润(javascript)

    一.题目地址 https://leetcode-cn.com/problems/gu-piao-de-zui-da-li-run-lcof/ 二.具体代码 /*** @param {number[]} ...

  7. leetcode 打印_剑指 Offer 总结 - leetcode 剑指offer系列

    剑指 Offer 系列完结撒花!! 本篇文章是对整个系列的精华总结, 对系列的每篇文章进行了分类, 并用一句话概括每道题的思路, 方便大家理解和记忆, 当然也包含原文完整链接供大家参考 总的来说, 写 ...

  8. C#LeetCode刷题-剑指Offer

    本文由 比特飞 原创发布,欢迎大家踊跃转载. 转载请注明本文地址:C#LeetCode刷题-剑指Offer | .Net中文网. C#LEETCODE刷题概述 概述 所有LeetCode剑指Offer ...

  9. 《剑指 Offer I》刷题笔记 20 ~ 30 题

    <剑指 Offer I>刷题笔记 20_30 动态规划(简单) 20. 斐波那契数列 _解法1:迭代 解法2:记忆化递归 解法3:动态规划 21. 青蛙跳台阶问题 _解法1:动态规划 22 ...

  10. 剑指offer做题记录

    1. 剑指 Offer 03. 数组中重复的数字   力扣 class Solution { public:int findRepeatNumber(vector<int>& nu ...

最新文章

  1. 一个Apache CollectionUtils.intersection 方法的简单问题
  2. splunk的bucket组织目录——时间序列,按照时间来组织目录
  3. EditText显示明文与密码
  4. 白话Elasticsearch35-深入聚合数据分析之案例实战更多metrics用法:统计每种颜色电视最大最小价格
  5. Lync前端服务器的卸载
  6. python正则表达式实例教程_Python正则表达式经典入门教程
  7. DS18B20读数错误排除
  8. mysql t获取当前时间_mysql怎么设置值timestamp 以便获取当前时间
  9. 计算机网络数据链路层 --- 后退n帧协议(GBN)
  10. 一条SQL语句的千回百转
  11. SQL Server 数据类型陷阱
  12. 【Python】SyntaxError: Non-ASCII character '\xe8' in file
  13. 【Matlab】曲线拟合
  14. 怎样截屏计算机桌面,如何快速截图? 电脑桌面截图快捷键是哪个【详细介绍】...
  15. 一篇文章搞懂数据仓库:数据治理(目的、方法、流程)
  16. 《西瓜书》学习笔记-目录
  17. 电子商务运营数据分析
  18. PM,RD,FE,UE,UI,QA,OP,DBA,BRD,MRD, PRD,FSD等缩写的全称解析
  19. 众人给诺基亚支招 Android提议何时了?
  20. 【钉钉-场景化能力包】钉钉群机器人助力工单管理

热门文章

  1. 咖说 | 为什么马斯克、SEC议员等众多大V都换了“激光眼”头像?
  2. Python Flask,Flask-WTF,表单验证,CSRF验证
  3. 技术名词:Q-in-Q
  4. 关于SCI论文Figure图片你想知道的都在这里!
  5. 服务器搭建hifi系统,初入烧友如何搭配好一套HIFI音响系统?只需要5点轻松搞定~...
  6. ubuntu16.04下安装TensorFlow(GPU加速)----详细图文教程
  7. 微信跳转外部浏览器打开指定链接源码
  8. 记录基于elementUI一个自定义上传图片的小功能
  9. java基础实现信息管理系统(教师和学生信息)
  10. 大数据计算(分布式)--简单理解