class Solution {
//时间复杂度和空间复杂度都为O(N)
public boolean isStraight(int[] nums) {
Set<Integer> set = new HashSet<>();
int min = 14, max = 0;
for (int i : nums) {
if (i == 0) {
continue;
} else {
if (set.contains(i)) {
return false;
}
set.add(i);
min = Math.min(min, i);
max = Math.max(max, i);
}
}
return max - min < 5;
}
}
共以下 8 个回答
先排序,然后计算有几个king
排序遍历
暴力排序法
先排序,然后看是否满足下面条件:
1. 除0外元素不重复;
2. 除0外元素最大最小值差小于5;