讨论/《画解剑指 Offer》 - 剑指 Offer 61. 扑克牌中的顺子 - 解决方案/
《画解剑指 Offer》 - 剑指 Offer 61. 扑克牌中的顺子 - 解决方案

Java版

class Solution {
    public boolean isStraight(int[] nums) {
        int len = nums.length;
        if (len != 5) {
            return false;
        }

        int jkcnt = 0;
        Arrays.sort(nums);
        for (int i = 0; i < len; i++) {
            // 先判断,同时防止数组溢出
            if (nums[i] != 0 && i != len - 1) {
                if (nums[i] == nums[i+1]) 
                    return false;
            }
            // 统计0的个数
            if (nums[i] == 0) {
                jkcnt++;
            }
            
        }

        return nums[len - 1] - nums[jkcnt] < 5;
    }
}
展开全部 3 讨论