public int maxProfit(int[] prices) {
        //算法题一定要考虑验证入参
        if(prices==null || prices.length<=1){
            return 0;
        }
        int size=prices.length;
        //初始化一个辅助数组 aux[i] 代表 f(i)
        int[] aux=new int[size];
        if(prices[size-2]<prices[size-1]){
            aux[size-2]=prices[size-1]-prices[size-2];
        }
        //
        for(int i=size-3;i>=0;--i){
            calculate(aux,prices,i);
        }
        return aux[0];
    }