方法一
使用哈希
import java.util.*; public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param nums int整型一维数组 * @return int整型 */ public int minNumberDisappeared (int[] nums) { // write code here int len=nums.length; Map<Integer,Integer> hash=new HashMap<>(); for(int i=0;i<len;i++){ hash.put(nums[i],1); } int res=1; while(hash.containsKey(res)){ res++; } return res; } }
方法二
import java.util.*; public class Solution { /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param nums int整型一维数组 * @return int整型 */ public int minNumberDisappeared (int[] nums) { // write code here int n=nums.length; for(int i=0;i<n;i++){ if(nums[i]<=0){ nums[i]=n+1; } } for(int i=0;i<n;i++){ if(Math.abs(nums[i])<=n){ nums[Math.abs(nums[i])-1]=-1*Math.abs(nums[Math.abs(nums[i])-1]); } } for(int i=0;i<n;i++){ if(nums[i]>0){ return i+1; } } return n+1; } }