由于只考虑一次交易,实际上就是让我们找到数组中后项和前项间的最大差值。 刚开始用了辅助空间记录每天之前的最低价,扫描两边得到结果。 后来发现可以不用辅助空间,直接一边得到该天之前的最低价,一边统计该天的最大收益即可。
public class Solution {
public int maxProfit(int[] prices) {
int l = prices.length;
int res=0;
if( l==0 )
{
return res;
}
int MIN = prices[0];
for( int i=0;i<l;i++ )
{
MIN = Math.min( prices[i],MIN );
res = Math.max(res,prices[i]-MIN);
}
return res;
}
}
本文介绍了一种寻找股票买卖最佳时机的算法实现,通过遍历价格数组并动态更新最低买入价格来计算最大利润。
653

被折叠的 条评论
为什么被折叠?



