![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
#股票
迪恩_Emma
喜欢看书的Java开发
展开
-
剑指 Offer 63. 股票的最大利润
思路: 2种状态 i)不持股(0) ii)持股(1) 代码: class Solution { public int maxProfit(int[] prices) { int n=prices.length; if(n<2) return 0; int[][] dp=new int[n][3]; dp[0][0]=0;//不持股,无操作 dp[0][1]=-prices[0];//持股 dp[0][2]=Integer.MIN_VA.原创 2021-03-29 10:11:17 · 37 阅读 · 0 评论 -
188. 买卖股票的最佳时机 IV(困难)
思路: 这里的限制是只能完成k笔交易 则设置dp为三维数组,其中一维用来存储k(交易了几笔) 分别表示: i)n表示下标 ii)k代表笔数 iii)2种状态 代码: class Solution { public int maxProfit(int k, int[] prices) { int n=prices.length; int[][][] dp=new int[n][k][2]; if(n<2||k==0) return 0; //n表示下标,k原创 2021-03-29 09:28:30 · 66 阅读 · 0 评论 -
714. 买卖股票的最佳时机含手续费(中等)
思路: 只有2种状态: i)不持股(0) ii)持股(1) 这里dp定义为二维数组即可,不需要存储交易了几笔 代码: class Solution { public int maxProfit(int[] prices, int fee) { int n=prices.length; int[][] dp=new int[n][2]; if(n<2) return 0; dp[0][0]=0; dp[0][1]=-prices...原创 2021-03-29 09:21:16 · 60 阅读 · 0 评论 -
123. 买卖股票的最佳时机 III(困难)
思路: 与122不同的时,当前限制了只能交易2笔,则交易多少笔,就设多少种相应状态 有5种状态: i)不持股,没有任何操作(0) ii)第一次买入(1) iii)第一次卖出(2) iiii)第二次买入(3) iiiii)第二次卖出(4) 代码: class Solution { public int maxProfit(int[] prices) { int n=prices.length; if(n<2) return...原创 2021-03-28 11:32:37 · 58 阅读 · 0 评论 -
122. 买卖股票的最佳时机 II(简单)
思路: 这次只有2种状态: i)不持股(0) ii)持股(1) 不像121题,还要考虑是卖出的不持股还是本来就不持股。这道题因为有多次交易,就不用考虑一次都没有的不持股情况 代码: class Solution { public int maxProfit(int[] prices) { int n=prices.length; int[][] dp=new int[n][2]; if(n<2) return 0; //状态转移方程 ...原创 2021-03-28 11:04:22 · 45 阅读 · 0 评论 -
121. 买卖股票的最佳时机(简单)
思路: 分为三种情况: i)不持股,从来没有买进过(0) ii)持股,买进过一次(1) iii)不持股,卖掉了一次(2) 设置dp[i][j],i表示下标为i,j表示状态(0~3) 代码: class Solution { public int maxProfit(int[] prices) { int n=prices.length; int[][] dp=new int[n][3]; if(n<2) return 0; //dp[i][...原创 2021-03-28 10:51:00 · 47 阅读 · 0 评论 -
309. 最佳买卖股票时机含冷冻期(中等)
思路: 分为三种情况: i)持股(dp[1]) ii)不持股,不处在冰冻期(dp[0]) iii)不持股,处在冰冻期(dp[2]) 代码: class Solution { public int maxProfit(int[] prices) { int n=prices.length; if(n<2) return 0; int[][] dp=new int[n][3]; //初始化 //0:不持股,不在冰冻期 //1:持股 //2:不持.原创 2021-03-28 10:07:25 · 62 阅读 · 0 评论