题解 | 缺失的第一个正整数

缺失的第一个正整数

https://www.nowcoder.com/practice/50ec6a5b0e4e45348544348278cdcee5

import java.util.*;


public class Solution {
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     * 
     * @param nums int整型一维数组 
     * @return int整型
     */
    public int minNumberDisappeared (int[] nums) {
        // write code here

        HashMap<Integer,Integer> map = new HashMap<Integer,Integer>();

        for(int i = 0;i<nums.length;i++){
            map.put(nums[i],1);
        }

        int min = Integer.MAX_VALUE;
        int max = Integer.MIN_VALUE;

        for(int i=0;i<nums.length;i++){

            if(nums[i]<=min){
               min = nums[i];
            }

            if(nums[i] >= max){
                max = nums[i];
            }
        }

    
        if(min>0) min = 0;
        for(int i=min;i<=max;i++){

            if(i >0 && map.get(i) == null){
                return i;
            }
        }

        return max+1;
    }
}

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

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