思路

  • 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;

    }
}