LeetCode-121. Best Time to Buy and Sell Stock

网友投稿 237 2022-08-29

LeetCode-121. Best Time to Buy and Sell Stock

Say you have an array for which the ith element is the price of a given stock on day i.

If you were only permitted to complete at most one transaction (i.e., buy one and sell one share of the stock), design an algorithm to find the maximum profit.

Note that you cannot sell a stock before you buy one.

Example 1:

Input: [7,1,5,3,6,4]Output: 5Explanation: Buy on day 2 (price = 1) and sell on day 5 (price = 6), profit = 6-1 = 5. Not 7-1 = 6, as selling price needs to be larger than buying price.

Example 2:

Input: [7,6,4,3,1]Output: 0Explanation: In this case, no transaction is done, i.e. max profit = 0.

题解:

class Solution {public: int maxProfit(vector& prices){ int ans = 0; int n = prices.size(); if (n == 0) { return 0; } int mini = prices[0]; for (int i = 1; i < prices.size(); i++) { if (mini > prices[i]) { mini = prices[i]; } else { ans = max(ans, prices[i] - mini); } } return ans; }};

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:线下门可罗雀,打着华为旗号搞营销,赛力斯AITO能做起来么?
下一篇:破圈年轻化营销,美的美居跨界游戏掀起岁末狂欢浪潮!
相关文章

 发表评论

暂时没有评论,来抢沙发吧~