Comment on page

121.Best-Time-to-Buy-and-Sell-Stock

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

代码

Approach #1 Price - leftMin

public class Solution {
public int maxProfit(int[] prices) {
if (prices == null || prices.length <= 1) return 0;
​
int maxProfit = 0;
int leftMin = Integer.MAX_VALUE;
for (int price : prices) {
maxProfit = Math.max(maxProfit, price - leftMin);
leftMin = Math.min(leftMin, price);
}
​
return maxProfit;
}
}