题目:
暴力双循环会时间超限
一次循环,不断更新min和sum值
时间复杂度为O(n),空间复杂度为O(1)
写完之后看了一眼题解,发现没有更好的方法
java
public int maxProfit(int[] prices) {
int sum =0,min=prices[0];
for(int i=1;i <prices.length;i++)
{
min=Math.min(min,prices[i]);
if(prices[i]-min>sum)
{
sum=prices[i]-min;
}
}
return sum;
}