方法一:(自己写的)
对每一个i找i之后的最大利润值
class Solution {
public int maxProfit(int[] prices) {
if(prices.length==0) {
return 0;
}
int profit=0;
for(int i=0;i<prices.length-1;i++) {
for(int j=i+1;j<prices.length;j++) {
if(prices[j]>prices[i] && (prices[j]-prices[i])>profit) {
profit=prices[j]-prices[i];
}
}
}
return profit;
}
}
方法二:
class Solution {
public int maxProfit(int[] prices) {
if(prices.length==0) {
return 0;
}
int profit=0;
int minPrice=prices[0];
for(int i=1;i<prices.length;i++) {
if(prices[i]<minPrice) {
minPrice=prices[i];
}else {
profit=Math.max(profit,prices[i]-minPrice);
}
}
return profit;
}
}