劍指offer之股票的最大利潤(rùn)

1 問題

求股票的最大利潤(rùn),簡(jiǎn)言之就是求一個(gè)數(shù)組里面元素差的最大值,要求時(shí)間復(fù)雜度O(n)



2 代碼實(shí)現(xiàn)

    #include <stdio.h>
    #include <stdlib.h>
     
    int maxDiff(int *number, int length)
    {
        if (NULL == number || length < 2)
        {
            return 0;
        }
        int min = number[0];
        int max = number[0];
        for (int i = 1; i < length; ++i)
        {
            if (min > number[i])
            {
                min = number[i];
            }
            if (max < number[i])
            {
                max = number[i];
            }
        }
        return max - min;
    }
     
     
    int main()
    {
        int a[] = {9, 11, 8, 5, 7, 12, 16, 14};
        int value = maxDiff(a, sizeof(a) / sizeof(int));
        printf("value id %d\n", value);
        return 0;
    }
     
    

 
3 運(yùn)行結(jié)果

value id 11


 


作者:chen.yu
深信服三年半工作經(jīng)驗(yàn),目前就職游戲廠商,希望能和大家交流和學(xué)習(xí),
微信公眾號(hào):編程入門到禿頭 或掃描下面二維碼
零基礎(chǔ)入門進(jìn)階人工智能(鏈接)