本文主要是介绍leetcode121,122(卖出股票的最佳时机),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。
设计一个算法来计算你所能获取的最大利润。你可以尽可能地完成更多的交易(多次买卖一支股票)。
思路。只需要前一天比后一天小就可以前一天卖出,买进,后一天再卖出,计算
public static int maxProfit1(int[] prices) {int sum = 0;for(int i=1;i<prices.length;i++) {if (prices[i] > prices[i-1]) {sum += prices[i]-prices[i-1];}}return sum;}
给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。
如果你最多只允许完成一笔交易(即买入和卖出一支股票一次),设计一个算法来计算你所能获取的最大利润。
思路,只需要找出最小值,然后计算最大差就可以
public int maxProfit(int[] prices) {if(prices.length <= 1) {return 0;}int min =Integer.MAX_VALUE;int max =0;for(int i =0;i<prices.length;i++) {if(min >= prices[i]) {min = prices[i];}else if(prices[i] -min > max) {max = prices[i] -min;}}return max;}
这篇关于leetcode121,122(卖出股票的最佳时机)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!