概要
给定一个数组 prices ,它的第 i 个元素 prices[i] 表示一支给定股票第 i 天的价格。
你只能选择 某一天 买入这只股票,并选择在 未来的某一个不同的日子 卖出该股票。设计一个算法来计算你所能获取的最大利润。
返回你可以从这笔交易中获取的最大利润。如果你不能获取任何利润,返回 0 。
实现
function maxProfit(prices){
let min = prices[0] // 初始化一个值为最小值
let res = 0 // 定义最大利润
for(let i = 1; i<prices.length ; i++){
if(min > prices[i]){
min = prices[i]
}else{
res = res > prices[i] - min ? res : prices[i] - min
}
}
return res
}
实测:
Accepted
212/212 cases passed (76 ms)
Your runtime beats 85.84 % of javascript submissions
Your memory usage beats 98.97 % of javascript submissions (50.1 MB)