剑指offer-45-扑克牌顺子

扑克牌顺子

http://www.nowcoder.com/questionTerminal/762836f4d43d43ca9deb273b3de8e1f4

思路

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

    }
}
剑指offer与数据结构 文章被收录于专栏

本专栏包括剑指offer题目和一些刷题用的数据结构,单调栈,树状数组,差分数组,后面还会更新红黑树等较为复杂的数据结构

全部评论

相关推荐

04-17 18:32
门头沟学院 Java
野猪不是猪🐗:他跟你一个学校,你要是进来之后待遇比他好,他受得了?
点赞 评论 收藏
分享
头顶尖尖的程序员:我是26届的不太懂,25届不应该是找的正式工作吗?为什么还在找实习?大四还实习的话是为了能转正的的岗位吗
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务