Merge pull request #1719 from xiaoyu2018/master

添加 0121买卖股票的最佳时机、0122买卖股票的最佳时机II C#版本
This commit is contained in:
程序员Carl
2022-11-02 09:18:09 +08:00
committed by GitHub
2 changed files with 80 additions and 4 deletions

View File

@ -464,6 +464,47 @@ function maxProfit(prices: number[]): number {
};
```
C#
> 贪心法
```csharp
public class Solution
{
public int MaxProfit(int[] prices)
{
int min = Int32.MaxValue;
int res = 0;
for (int i = 0; i < prices.Length; i++)
{
min = Math.Min(prices[i], min);
res = Math.Max(prices[i] - min, res);
}
return res;
}
}
```
> 动态规划
```csharp
public class Solution
{
public int MaxProfit(int[] prices)
{
int[] dp = new int[2];
int size = prices.Length;
(dp[0], dp[1]) = (-prices[0], 0);
for (int i = 0; i < size; i++)
{
dp[0] = Math.Max(dp[0], -prices[i]);
dp[1] = Math.Max(dp[1], dp[0]+prices[i]);
}
return dp[1];
}
}
```
@ -471,3 +512,4 @@ function maxProfit(prices: number[]): number {
<a href="https://programmercarl.com/other/kstar.html" target="_blank">
<img src="../pics/网站星球宣传海报.jpg" width="1000"/>
</a>

View File

@ -169,8 +169,6 @@ class Solution {
}
```
Python
> 版本一:
@ -253,8 +251,6 @@ func max(a,b int)int{
}
```
Javascript
```javascript
// 方法一动态规划dp 数组)
@ -331,9 +327,47 @@ function maxProfit(prices: number[]): number {
};
```
C#
> 贪心法
```csharp
public class Solution
{
public int MaxProfit(int[] prices)
{
int res = 0;
for (int i = 1; i < prices.Length; i++)
res += Math.Max(0, prices[i] - prices[i-1]);
return res;
}
}
```
> 动态规划
```csharp
public class Solution
{
public int MaxProfit(int[] prices)
{
int[] dp = new int[2];
dp[0] = -prices[0];
for (int i = 1; i < prices.Length; i++)
{
dp[0] = dp[0]>dp[1] - prices[i]?dp[0]:dp[1] - prices[i];
dp[1] = dp[1] > dp[0] + prices[i] ? dp[1] : dp[0] + prices[i];
}
return dp[1];
}
}
```
<p align="center">
<a href="https://programmercarl.com/other/kstar.html" target="_blank">
<img src="../pics/网站星球宣传海报.jpg" width="1000"/>
</a>