14-股票交易v3
原创2022年12月14日大约 2 分钟...约 629 字
Description
给定一个数组代表股票每天的价格,请问只能买卖两次的情况下,最大化利润是多少?
请实现 Solution
类的 maxProfit
函数,输出最大利润。(不需要输出买卖的序列)
class Solution:
def maxProfit(self, prices) -> int:
Sample Input 1
[3, 3, 5, 0, 0, 3, 1, 4]
Sample Output 1
6
Hint:在第 4 天(股票价格 = 0)的时候买入,在第 6 天(股票价格 = 3)的时候卖出,这笔交易所能获得利润 = 3 - 0 = 3。随后,在第 7 天(股票价格 = 1)的时候买入,在第 8 天 (股票价格 = 4)的时候卖出,这笔交易所能获得利润 = 4 - 1 = 3 。
Sample Input 2
[1, 2, 3, 4, 5]
Sample Output 2
4
Hint: 在第 1 天(股票价格 = 1)的时候买入,在第 5 天 (股票价格 = 5)的时候卖出, 这笔交易所能获得利润 = 5-1 = 4 。注意你不能在第 1 天和第 2 天接连购买股票,之后再将它们卖出。因为这样属于同时参与了多笔交易,你必须在再次购买前出售掉之前的股票。
Sample Input 3
[7, 6, 4, 3, 1]
Sample Output 3
0
Hint: 在这个情况下,没有能够获利的交易可以被完成,所以最大利润为 0。
欢迎关注我公众号:AI悦创,有更多更好玩的等你发现!
公众号:AI悦创【二维码】
AI悦创·编程一对一
AI悦创·推出辅导班啦,包括「Python 语言辅导班、C++ 辅导班、java 辅导班、算法/数据结构辅导班、少儿编程、pygame 游戏开发,华为 Python 机试」,全部都是一对一教学:一对一辅导 + 一对一答疑 + 布置作业 + 项目实践等。当然,还有线下线上摄影课程、Photoshop、Premiere 一对一教学、QQ、微信在线,随时响应!微信:Jiabcdefh
C++ 信息奥赛题解,长期更新!长期招收一对一中小学信息奥赛集训,莆田、厦门地区有机会线下上门,其他地区线上。微信:Jiabcdefh
方法一:QQ
方法二:微信:Jiabcdefh
你认为这篇文章怎么样?
- 0
- 0
- 0
- 0
- 0
- 0