T121——买卖股票的最佳时期
代码如下——
动态规划
int maxProfit(int* prices, int pricesSize) {
int maxp = 0;
int minv = prices[0];
for(int i =1;i<pricesSize;++i)
{
if(prices[i]-minv>maxp)
{
maxp = prices[i] - minv;
}
else if(prices[i]<minv)
{
minv = prices[i];
}
}
return maxp;
}
算法优化后——
int maxProfit(int* prices, int n) {
int maxp = 0;
int minv = prices[0];
for(int i =1;i<n;++i)
{
if(prices[i]-minv>maxp)
{
maxp = prices[i] - minv;
}
else if(prices[i]<minv)
{
minv = prices[i];
}
}
return maxp;
}
算法再优化好好好好好好好——
int maxProfit(int* prices, int n) {
int maxp = 0, minv = prices[0];
for(int i =1;i<n;++i)
{
if(prices[i]<minv)minv = prices[i];
else if(prices[i]-minv>maxp) maxp = prices[i] - minv;
}
return maxp;
}