Leetcode专题[数组]-121-买卖股票的最佳时机

力扣链接:https://leetcode-cn.com/probl...
解题思路:
1、这道题目可以使用贪心算法的策略来解决,贪心算法是具有非后效性的问题找局部最优解的算法。
2、贪心策略:在买卖股票的时候,我们知道最赚钱的肯定是最低点的时候买入,然后最高点的时候卖出。所以我们记录一个最低价格,然后记录一个最大利润,从前往后遍历的时候不断更新这个价格,直到得出最大的利润

func maxProfit(prices []int) int {
    max := 0
    minPrice := prices[0]
    for i := 1; i < len(prices); i++ {
        if minPrice > prices[i] {
            minPrice = prices[i]
        }
        if prices[i] - minPrice > max {
            max = prices[i] - minPrice
        }
    }
    return max
}

你可能感兴趣的:(golang)