我的LeetCode代码仓:https://github.com/617076674/LeetCode
原题链接:https://leetcode-cn.com/problems/maximum-gap/description/
题目描述:
知识点:桶排序
思路:桶排序
如果数组中的元素个数小于2,直接返回0即可。
对于n(n >= 2)个元素,假设其中的最大值是max,最小值是min。
如果max和min相等,显然我们应该返回0。
否则,为其准备n + 1个桶,每个桶中的数字区间尽量平均分配,即第一个桶中存放[min, min + capacity)区间内的数字,最后一个桶中存放[max - capacity, max]区间内的数字。显然,max和min已经保证了第一个桶和最后一个桶不是空桶。
显然,将n个元素放进n + 1个桶里,至少会有一个空桶。同一个桶内的差值必然小于capacity