内容简介:动态规划关键点在于profit,最终的最优解,即为在每步最优解中取最优解
https://leetcode.com/problems/best-time-to-buy-and-sell-stock/
动态规划
关键点在于profit,最终的最优解,即为在每步最优解中取最优解
建立一个profits数组存储每天最优解,最终选择最优解,当然这里要时刻跟踪最小值。
var maxProfit = function(prices) { var profits = []; var minPrice = prices[0]; for (let i = 0; i < prices.length; i++) { minPrice = Math.min(minPrice, prices[i]); profits[i] = prices[i] - minPrice; } return Math.max(...profits); };
优化后:
var maxProfit = function(prices) { var minPrice = Number.MAX_VALUE, maxProfit = 0; for (var i = 0; i < prices.length; i++) { minPrice = Math.min(minPrice, prices[i]); var profit = prices[i] - minPrice; maxProfit = Math.max(maxProfit, profit); } return maxProfit; };
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- Leetcode 121 Best time to buy and sell stock
- LeetCode - 121 - 买卖股票的最佳时机(best-time-to-buy-and-sell-stock)
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Spring框架高级编程
约翰逊 / 蒋培 / 机械工业出版社 / 2006-4 / 59.00元
Spring框架是主要的开源应用程序开发框架,它使得Java/J2EE开发更容易、效率更高。本书不仅向读者展示了Spring能做什么?而且揭示了Spring完成这些功能的原理,解释其功能和动机,以帮助读者使用该框架的所有部分来开发成功的应用程序。本书涵盖Spring的所有特性,并且演示了如何将其构成一个连贯的整体,帮助读者理解Spring方法的基本原理、何时使用Sping以及如何效仿最佳实践。所有......一起来看看 《Spring框架高级编程》 这本书的介绍吧!