本文共 749 字,大约阅读时间需要 2 分钟。
Best Time to Buy and Sell Stock III
Say you have an array for which the ith element is the price of a given stock on day i.
Design an algorithm to find the maximum profit. You may complete at most two transactions.
Note:
You may not engage in multiple transactions at the same time (ie, you must sell the stock before you buy again).
public class Solution { public int maxProfit(int[] prices) { int n = prices.length; if(n<2) return 0; //first transaction's max profit int[] fmp = new int[n]; fmp[0] = 0; int minPrice = prices[0]; for(int i=1; i=0; i--){ maxPrice = Math.max(maxPrice, prices[i]); smp[i] = Math.max(smp[i+1], maxPrice-prices[i]); } int profix = 0; for(int i=0; i
转载地址:http://bpuni.baihongyu.com/