public class Solution {
public static void main(String[] args) {
int[] nums1 = new int[]{3, 2, 4};
int[] nums2 = new int[]{3, 7, 4,9};
System.out.println(maxProfit(nums1));
}
/**
* 给定一个数组 prices,它的第i个元素prices[i]表示一支给定股票第i天的价格
*
* 你只能选择某一天买入这只股票,并选择在未来的某一个不同的日子卖出该股票,设计一个算法来计算你所能获取的最大利润。
*
* 返回你可以从这笔交易中获取的最大利润。如果你不能获取任何利润,返回0
* @param prices
* @return
*/
public static int maxProfit(int[] prices) {
if(prices.length <= 1)
return 0;
int min = prices[0], max = 0;
for(int i = 1; i < prices.length; i++) {
max = Math.max(max, prices[i] - min);
min = Math.min(min, prices[i]);
}
return max;
}
}
评论