首页 > 代码库 > Leetcode: Best Time to Buy and Sell Stock

Leetcode: Best Time to Buy and Sell Stock

My original thought was to calculate all the possible transactions by using nested loop.  But got time limit excess error.

I knew it can be done in O(n), but I could not figure it out by myself, so I checked the solutions that were available in Internet.  

 1 public class Solution {
 2     public int maxProfit(int[] prices) {
 3         int profit = 0;
 4         int min = Integer.MAX_VALUE;
 5         if (prices.length == 0) return profit;
 6         for (int current : prices) {
 7             if (current < min) {
 8                 min = current;
 9             }
10             if (profit < current-min) {
11                 profit = current - min;
12             }
13         }
14         return profit;
15     }
16 }