欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

股票的最大利润

程序员文章站 2022-07-12 08:54:20
...

题目:假设把某股票的价格按照时间先后顺序存储在数组中,请问买卖交易该股
票可能获得的利润是多少?例如一只股票在某些时间节点的价格为{9, 11, 8, 5,
7, 12, 16, 14}。如果我们能在价格为5的时候买入并在价格为16时卖出,则能
收获最大的利润11。

public class MaxDiff {
    public static void main(String[] args) {
        int a[]={19,2,0,8,9,7,0};
        maxDiff(a);
    }

    private static void maxDiff(int[] a) {
        if(a==null||a.length<2){
            return;
        }
        int min=a[0];
        int diff=0;
        for(int i=0;i<a.length;i++){
           if(a[i]<min){
               min=a[i];
           }
           if(a[i]-min>diff){
               diff=a[i]-min;
           }
        }
        System.out.println(diff);
    }

}