• LeetCode——Best Time to Buy and Sell Stock


    Description:

    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 (ie, buy one and sell one share of the stock), design an algorithm to find the maximum profit.

    只允许买卖一次,求最大利润。

    动态规划,从后向前找最大股价,减去当前股价,求利润,找最大利润。O(n).

    public class Solution {
        public int maxProfit(int[] prices) {
            
            int len = prices.length;
            if(len == 0) return 0;
            int highestPrice = prices[len - 1];
            int res = 0;
            for(int i=len-1; i>=0; i--) {
                highestPrice = max(highestPrice, prices[i]);
                res = max(res, highestPrice-prices[i]);
            }
            
            return res;
        }
        
        int max(int a, int b) {
            return a > b ? a : b;
        }
    }
  • 相关阅读:
    基本HAL库操作函数整理
    oled(iic协议)
    Uart串口中断收发
    博主回来啦
    博主的冒泡1
    AFO

    起床困难综合症
    费解的开关
    数独
  • 原文地址:https://www.cnblogs.com/wxisme/p/4859834.html
Copyright © 2020-2023  润新知