【剑指offer】面试题63:股票的最大利润(Java)
生活随笔
收集整理的這篇文章主要介紹了
【剑指offer】面试题63:股票的最大利润(Java)
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
假設(shè)把某股票的價格按照時間先后順序存儲在數(shù)組中,請問買賣該股票一次可能獲得的最大利潤是多少?
?
示例 1:
輸入: [7,1,5,3,6,4]
輸出: 5
解釋: 在第 2 天(股票價格 = 1)的時候買入,在第 5 天(股票價格 = 6)的時候賣出,最大利潤 = 6-1 = 5 。
? ? ?注意利潤不能是 7-1 = 6, 因為賣出價格需要大于買入價格。
示例 2:
輸入: [7,6,4,3,1]
輸出: 0
解釋: 在這種情況下, 沒有交易完成, 所以最大利潤為 0。
?
限制:
0 <= 數(shù)組長度 <= 10^5
代碼:
class?Solution?{
????public?int?maxProfit(int[]?prices)?{
????????int?result=0;
????????for(int?i=1;i<prices.length;i++)
????????{
????????????result?=?Math.max(result,prices[i]-prices[i-1]);
????????????prices[i]?=?Math.min(prices[i],prices[i-1]);
????????}
????????return?result;
????}
}
總結(jié)
以上是生活随笔為你收集整理的【剑指offer】面试题63:股票的最大利润(Java)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【剑指offer】面试题50:第一个只出
- 下一篇: 【剑指offer】面试题32 - II: