NC7题解 | #买卖股票的最好时机(一)#

买卖股票的最好时机(一)

http://www.nowcoder.com/practice/64b4262d4e6d4f6181cd45446a5821ec

对每天的价格: 保存一个之前的最小价格 保留一个之前的最大收益

import java.util.*;


public class Solution {
    public int maxProfit (int[] prices) {
        // write code here
        if(prices == null || prices.length == 0){
            return 0;
        }
        int len = prices.length;
        //每天与之前最小价格的差值
        int[] dp = new int[len];
        //最小价格
        int min = prices[0];
        //最大收益
        int max = 0;
        for(int i = 1; i < len; i++){
            dp[i] = prices[i] - min;
            min = Math.min(min,prices[i]);
            max = Math.max(max,dp[i]);
        }
        return max;
    }
}
全部评论

相关推荐

11-07 16:07
深圳大学 运营
前端飞升:学长,阿里不是卡双非吗,我深也能去吗
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务