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

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

http://www.nowcoder.com/practice/9e5e3c2603064829b0a0bbfca10594e9

非递归解法,大家可以瞅一瞅!!!!!!

public:
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     * 计算最大收益
     * @param prices int整型vector 股票每一天的价格
     * @return int整型
     */
    int maxProfit(vector<int>& prices) {
        // write code here
        int left = 0;
        int max = 0;
        for(int i = 1; i < prices.size(); i++){
            if(prices[i] > prices[i - 1]){
                if(i == prices.size() - 1){
                    max += prices[i] - prices[left];
                }
            }
            else if(i != left && prices[i] <= prices[i - 1]){
                max += prices[i - 1] - prices[left];
                left = i;
            }
        }
        return max;
    }
};
全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务