LeetCode刷題: 【121】買賣股票的最佳時機

1. 題目

給定一個數組,它的第 i 個元素是一支給定股票第 i 天的價格。

如果你最多隻允許完成一筆交易(即買入和賣出一支股票),設計一個算法來計算你所能獲取的最大利潤。

注意你不能在買入股票前賣出股票。

來源:力扣(LeetCode)
鏈接:https://leetcode-cn.com/problems/best-time-to-buy-and-sell-stock
著作權歸領釦網絡所有。商業轉載請聯繫官方授權,非商業轉載請註明出處。

2. 解題思路

在遍歷過程中保存歷史最低點

3. 代碼

class Solution {
public:
    int maxProfit(vector<int>& prices) {
        int min = 0;
        int profit = 0;
        for(int i = 0; i < prices.size(); i++){
            if(prices[i] < prices[min]){
                min = i;
            }else if(prices[i] - prices[min] > profit){
                profit = prices[i] - prices[min];
            }
        }
        return profit;
    }
};
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章