其实就是可以看成一个桶排序,每个桶里面只需要存一个最大值和一个最小值即可,A空...B B的最大值-A的最小值就是一个潜在的最大差值,因为还可能存在C空...D的情况,这里也有一个差值,比较这些差值谁大即可。
#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;
class Gap {
public:
int maxGap(vector<int> A, int n)
{
int i,j,maxGap;
vector<vector<int> > B(n+1);
int max,min;
for(i=1,max=min=A[0];i<n;i++)
{