思路
- set集合,有重复直接返回flase,否则max-min<5,注意要去除0的min和max
- 排序,遍历,等于0记录cnt++,如果number[i]-number[i-1]-1大于cnt,返回false,否则cnt减去对应的值。
代码
import java.util.*;
public class Solution {
public boolean isContinuous(int [] numbers) {
if(numbers.length!=5){return false;}
Set<Integer> set=new HashSet<>();
int min=14,max=0;
for(int i=0;i<numbers.length;i++){
if(numbers[i]!=0){
if(numbers[i]!=0 && set.contains(numbers[i])){
return false;
}else{
set.add(numbers[i]);
}
min=Math.min(min,numbers[i]);
max=Math.max(max,numbers[i]);
}
}
return max-min<5;
}
}