import java.util.*;


public class Solution {
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     * 
     * @param prices int整型一维数组 
     * @return int整型
     */
   public int max_profit (int[] prices) {
        // write code here
        int profit = 0;
        int right = prices[prices.length-1];
        for(int i=prices.length-2;i>=0;i--){
            if(prices[i]<right){
                profit = Math.max(profit,right-prices[i]);
            }else if(prices[i]>right){
                right = prices[i];
            }
        }
        return profit;
    }
}

本题考察的知识点是贪心算法,所用编程语言是java。

我的想法是从后往前找从i位置之后的最大值,然后两者相减,就是在i位置买入股票售卖能够得到的最大利润