import java.util.ArrayList;
import java.util.List;
public class FirstMissingPositive {
public static void main(String[] args) {
int[] nums = {1,2,0};
int firstPositive = firstMissingPositive(nums);
System.out.println(firstPositive);
}
public static int firstMissingPositive(int[] nums) {
if (nums == null || nums.length == 0) {
return 1;
}
List<Integer> list = new ArrayList<>(nums.length);
int max = nums[0];
for (int i = 0; i < nums.length; i ++) {
if (max < nums[i]) {
max = nums[i];
}
list.add(nums[i]);
}
if (max <= 0) {
return 1;
}
for (int i = 1; i <= max; i ++) {
if (!list.contains(i)) {
return i;
}
}
return max + 1;
}
}
缺失的第一个正数的思路和JAVA实现
最新推荐文章于 2023-01-02 13:29:50 发布