2017.10.30
缺失的素数出现的地方,有三种情况
1.开头
2.中间
3.结尾
对这三种情况分别进行处理就可以了
public class Solution {
/*
* @param : an array of integer
* @return: the first missing prime number
*/
public int firstMissingPrime(int[] nums) {
// write your code here
Arrays.sort(nums);
if(nums.length == 0 || nums[0] > 2){
return 2;
}
for(int i = 2; i < nums[0]; i++){
boolean flag = false;
for(int k = 2; k <= Math.sqrt(k)+1;k++){
if(i%k == 0){
flag = true;
break;
}
}
if(flag == false){
return i;
}
}
for(int i = 0; i < nums.length - 1; i++){
for(int j = nums[i] + 1; j < nums[i+1]; j++){
boolean flag = false;
for(int k = nums[0]; k <= Math.sqrt(j); k++){
if(j % k == 0 ){
flag = true;
break;
}
}
if(flag == false){
return j;
}
}
}
for(int i = nums[nums.length - 1] + 1;; i++){
boolean flag = false;
for(int k = nums[0]; k <= Math.sqrt(i); k++){
if(i % k == 0 ){
flag = true;
break;
}
}
if(flag == false){
return i;
}
}
}
};