package leecode;
/**
 * 丢失的数字
 * @author Tang
 * 给定一个包含 [0, n] 中 n 个数的数组 nums ,找出 [0, n] 这个范围内没有出现在数组中的那个数。
 * 你能否实现线性时间复杂度、仅使用额外常数空间的算法解决此问题?
 */
public class MissingNumber {
    public int missingNumber(int[] nums) {
        if(nums.length == 0){
            return 0;
        }
        int[] array = new int[nums.length+1];
        for(int i = 0; i < nums.length; i++){
            int index = nums[i];
            array[index] = 1;
        }
        for(int i = 0; i < array.length; i++){
            if(array[i] == 0){
                return i;
            }
        }
        return 0;
    }
    public static void main(String[] args) {
        int[] nums = {3,0,1};
        System.out.println(new MissingNumber().missingNumber(nums));
    }
}