题目:
思路:
代码:
class Solution
{
public:
bool IsContinuous(vector<int> numbers)
{
int length=number.size();
if(length<=0)
return fasle;
//排序数组
sort(numbers.begin(),numbers.end());
int numberOfZero=0;
int numberOfGap=0;
//求0的个数
for(int i=0;i<length && number[i]==0;i++)
++numberOfZero;
//统计数组中的间隔数目
int small = numberOfZero; //非0数的最小下标
int big = small+1;
while(big<length)
{
//两个数相等,有对子,不可能是顺子
if(number[small]==numbers[big])
return false;
numberOfGap+=numbers[big]-numbers[small]-1;
//相邻的两个数做差
small = big;
++big;
}
return (numberOfGap<numberOfZero)?true:false;
}
}