如何做视频网站技术指标,tom企业邮箱官网,北京网站建设开发公司哪家好,网页设计教程ppt封面图片dp[i][0] 表示第i天持有股票所得最多现金#xff0c;相当于买的价格最低#xff0c;卖的价格最高
持有股票状态为0#xff0c;不持有为1
用二维数组表示天数和是否持有#xff0c;
i-1天就持有#xff0c;或者第i天买入
class Solution {public int maxProfit(int[] p…dp[i][0] 表示第i天持有股票所得最多现金相当于买的价格最低卖的价格最高
持有股票状态为0不持有为1
用二维数组表示天数和是否持有
i-1天就持有或者第i天买入
class Solution {public int maxProfit(int[] prices) {if(prices.length0||pricesnull) return 0;int lenprices.length;int[][] dpnew int[len][2]; //dp[][0-1]表示第i天持不持有股票的最大现金dp[0][0]-prices[0];dp[0][1]0;for(int i1;ilen;i){dp[i][0]Math.max(dp[i-1][0],-prices[i]);//前一天就持有的现金或者今天才买入dp[i][1]Math.max(dp[i-1][1],dp[i][0]prices[i]);//前一天已经不持有股票的现金或者今天才卖出}return dp[len-1][1];}
}
可以进行多次买卖 class Solution {public int maxProfit(int[] prices) {//0持有1不持有int lenprices.length;int[][] dpnew int[len][2];dp[0][0]-prices[0];dp[0][1]0;for(int i1;ilen;i){dp[i][0]Math.max(dp[i-1][0],dp[i-1][1]-prices[i]);//持有的最大金额dp[i][1]Math.max(dp[i-1][1],dp[i-1][0]prices[i]);}return dp[len-1][1];}
}