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

Leetcode每日一题:164.maximum-gap(最大间距)

程序员文章站 2024-03-09 13:58:17
...

Leetcode每日一题:164.maximum-gap(最大间距)
思路:开始没看见下面的说明,直接一sort完事了;后来看见后无疑就想到了基数排序,只有计数排序基数排序能在最坏的情况下达到线性时间复杂度,而基数排序无疑不满足线性空间复杂度,所以这里选择基数排序;
Leetcode每日一题:164.maximum-gap(最大间距)
Leetcode每日一题:164.maximum-gap(最大间距)

static bool cmp(int a, int b)
{
    return a < b;
}

int maximumGap(vector<int> &nums)
{
    int len = nums.size();
    if (len < 2)
        return 0;
    sort(nums.begin(), nums.end(), cmp);
    int res = 0;
    for (int i = 1; i < len; i++)
    {
        int temp = nums[i] - nums[i - 1];
        if (temp > res)
            res = temp;
    }
    return res;
}

基数排序等十大排序算法实现可查看我的这篇文章:
Algorithm:十大经典排序算法C++实现及总结