题解 | 扑克牌顺子

扑克牌顺子

https://www.nowcoder.com/practice/762836f4d43d43ca9deb273b3de8e1f4

import java.util.*;


public class Solution {
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     * 
     * @param numbers int整型一维数组 
     * @return bool布尔型
     */
    public boolean IsContinuous (int[] numbers) {
        // write code here
        // 组成顺子的条件:顺子不能有重复牌,顺子的最大值和最小值差不能大于4
        HashMap<Integer,Integer> hashmap = new HashMap<>();
        int max = 0, min = 13;
        for(int i = 0;i<numbers.length;i++){
            if(numbers[i] != 0){
                // 如果有重复牌,则表示不能组成顺子
                if(hashmap.containsKey(numbers[i])){
                    return false;
                }
                // 添加新牌
                hashmap.put(numbers[i],i);
                // 更新牌堆里最大值和最小值
                if(numbers[i] > max){
                    max = numbers[i];
                }
                if(numbers[i] < min){
                    min = numbers[i];
                }
            }
        }
        if(max - min > 4){
            return false;
        }else{
            return true;
        }
    }
}

全部评论

相关推荐

zhiyog:哈哈哈哈哈哈哈哈哈哈哈哈哈
点赞 评论 收藏
分享
06-20 17:42
东华大学 Java
凉风落木楚山秋:要是在2015,你这简历还可以月入十万,可惜现在是2025,已经跟不上版本了
我的简历长这样
点赞 评论 收藏
分享
码农索隆:想看offer细节
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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