Leetcode Best Time to Buy and Sell Stock

**
* https://oj.leetcode.com/problems/best-time-to-buy-and-sell-stock/
* Say you have an array for which the ith element is the price of a given stock on day i.
* If you were only permitted to complete at most one transaction (ie, buy one and sell one share of the stock),
* design an algorithm to find the maximum profit.
* 如果输入为[6, 9, 12, 4, 11, 1, 9]
* 则应该在1时买入,在9时候卖出
**/
class Solution {
public:
    int maxProfit(vector<int> &prices) {
        int i = 0;
        int size = prices.size();
        
        if(size == 0){
            return 0;    
        }
        
        int min = prices[0];
        int profit = 0;
     
        for(i = 1; i < size; i++){
           if(prices[i] - min > profit){
                profit = prices[i] - min;
            }
            
           if(prices[i] < min){
                min = prices[i];
           }
        }
        return  profit;
        
    }
};


posted @ 2017-04-28 08:49  clnchanpin  阅读(122)  评论(0编辑  收藏  举报