首页 > 代码库 > 扑克牌顺子

扑克牌顺子

题目:决定大小王可以看成任何数字,并且A看作1,J为11,Q为12,K为13,判断能否抽到顺子

思路:先排序,再统计0的个数,最后统计相邻的空缺,空缺总数小于等于0的总数,成功,否则失败,若有非0数字重复出现,则必不连然续,

 

public boolean isContinuous(int [] numbers) {
        int n=numbers.length;
        if(n<1)return false;
        //排序以后从0开始
        Arrays.sort(numbers);
       
        int zero=0;
        for(int i=0;i<n;i++){
            if(numbers[i]==0)
                 zero++;
        }
        int temp=0;
         for(int i=zero;i<n-1;i++){
        //有对子,必然不可能
if(numbers[i+1]==numbers[i]) return false; if(numbers[i+1]-numbers[i]-1!=0) temp+=numbers[i+1]-numbers[i]-1; } return temp>zero?false:true; }

 

扑克牌顺子