题目描述
数组里的每个元素代表每一天的价格情况,请计算这段时间最多能挣多少。
示例:
输入:[1,4,2]
返回:3
解释:第一天买,第二天卖,4-1=3;
输入:[2,4,1]
返回:2
解释:第一套买,第二天卖,4-2=2;
解题思路
用一个变量记录当前天的最小值(从第二天开始),然后用每天减去这个最小值,得出的结果保留一个最大值并将其返回则是题目所需要的答案。
代码实现
import java.util.*;
public class Solution {
/**
*
* @param prices int整型一维数组
* @return int整型
*/
public int maxProfit (int[] prices) {
// write code here
int res = 0;
int min = prices[0];
for(int i = 1;i < prices.length;i++) {
min = Math.min(min,prices[i]);
res = Math.max(res,prices[i]-min);
}
return res;
}
}