剑指OFFER----63-1、股票的最大利润I(js实现)
题目
假设把某股票的价格按照时间先后顺序存储在数组中,请问买卖该股票一次可能获得的最大利润是多少?
示例 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^5leetcode链接: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实现)相关推荐
- 【LeetCode】剑指 Offer 63. 股票的最大利润
[LeetCode]剑指 Offer 63. 股票的最大利润 文章目录 [LeetCode]剑指 Offer 63. 股票的最大利润 package offer;public class Soluti ...
- leetcode剑指 Offer 63. 股票的最大利润(动态规划)
假设把某股票的价格按照时间先后顺序存储在数组中,请问买卖该股票一次可能获得的最大利润是多少? 示例 1: 输入: [7,1,5,3,6,4] 输出: 5 解释: 在第 2 天(股票价格 = 1)的时候 ...
- 【算法】剑指 Offer 63. 股票的最大利润
1.概述 假设把某股票的价格按照时间先后顺序存储在数组中,请问买卖该股票一次可能获得的最大利润是多少? 示例 1: 输入: [7,1,5,3,6,4] 输出: 5 解释
- 【LeetCode笔记】121. 买卖股票的最佳时机 / 剑指 Offer 63. 股票的最大利润(Java、动态规划)
文章目录 题目描述 代码 & 思路 初版代码 更新啦-优化代码 再次更新 题目描述 讲道理,一眼dp 代码 & 思路 时间复杂度O(n),不过可改进的地方还多,跑出来大概6ms. 初版 ...
- leetcode:剑指 Offer 63. 股票的最大利润【记录前缀最小和 or 无脑线段树】
分析 无脑线段树记录后面的最大值 然后前缀最小和记录前面的最小值 无脑线段树 from functools import reduceclass SegTree:'''通用线段树 by AK自动机支持 ...
- 剑指 Offer 63. 股票的最大利润(javascript)
一.题目地址 https://leetcode-cn.com/problems/gu-piao-de-zui-da-li-run-lcof/ 二.具体代码 /*** @param {number[]} ...
- leetcode 打印_剑指 Offer 总结 - leetcode 剑指offer系列
剑指 Offer 系列完结撒花!! 本篇文章是对整个系列的精华总结, 对系列的每篇文章进行了分类, 并用一句话概括每道题的思路, 方便大家理解和记忆, 当然也包含原文完整链接供大家参考 总的来说, 写 ...
- C#LeetCode刷题-剑指Offer
本文由 比特飞 原创发布,欢迎大家踊跃转载. 转载请注明本文地址:C#LeetCode刷题-剑指Offer | .Net中文网. C#LEETCODE刷题概述 概述 所有LeetCode剑指Offer ...
- 《剑指 Offer I》刷题笔记 20 ~ 30 题
<剑指 Offer I>刷题笔记 20_30 动态规划(简单) 20. 斐波那契数列 _解法1:迭代 解法2:记忆化递归 解法3:动态规划 21. 青蛙跳台阶问题 _解法1:动态规划 22 ...
- 剑指offer做题记录
1. 剑指 Offer 03. 数组中重复的数字 力扣 class Solution { public:int findRepeatNumber(vector<int>& nu ...
最新文章
- 一个Apache CollectionUtils.intersection 方法的简单问题
- splunk的bucket组织目录——时间序列,按照时间来组织目录
- EditText显示明文与密码
- 白话Elasticsearch35-深入聚合数据分析之案例实战更多metrics用法:统计每种颜色电视最大最小价格
- Lync前端服务器的卸载
- python正则表达式实例教程_Python正则表达式经典入门教程
- DS18B20读数错误排除
- mysql t获取当前时间_mysql怎么设置值timestamp 以便获取当前时间
- 计算机网络数据链路层 --- 后退n帧协议(GBN)
- 一条SQL语句的千回百转
- SQL Server 数据类型陷阱
- 【Python】SyntaxError: Non-ASCII character '\xe8' in file
- 【Matlab】曲线拟合
- 怎样截屏计算机桌面,如何快速截图? 电脑桌面截图快捷键是哪个【详细介绍】...
- 一篇文章搞懂数据仓库:数据治理(目的、方法、流程)
- 《西瓜书》学习笔记-目录
- 电子商务运营数据分析
- PM,RD,FE,UE,UI,QA,OP,DBA,BRD,MRD, PRD,FSD等缩写的全称解析
- 众人给诺基亚支招 Android提议何时了?
- 【钉钉-场景化能力包】钉钉群机器人助力工单管理
热门文章
- 咖说 | 为什么马斯克、SEC议员等众多大V都换了“激光眼”头像?
- Python Flask,Flask-WTF,表单验证,CSRF验证
- 技术名词:Q-in-Q
- 关于SCI论文Figure图片你想知道的都在这里!
- 服务器搭建hifi系统,初入烧友如何搭配好一套HIFI音响系统?只需要5点轻松搞定~...
- ubuntu16.04下安装TensorFlow(GPU加速)----详细图文教程
- 微信跳转外部浏览器打开指定链接源码
- 记录基于elementUI一个自定义上传图片的小功能
- java基础实现信息管理系统(教师和学生信息)
- 大数据计算(分布式)--简单理解