面试题:查找遗漏的数字

难度:中等

给定一个从 0, 1, 2, ...., n 包含了n个唯一数字的数组,查找数组中遗漏的那个数字。

例如:数组 nums = [0, 1, 3],则返回 2。

 

答案:

public class Solution {
    public int missingNumber(int[] nums) {
        int n = nums.length + 1;
        int[] array = new int[n];
        
        // initial the array
        for(int i = 0; i<n; i++) {
            array[i] = 0;
        }
        
        for(int i = 0; i< nums.length; i++) {
            array[nums[i]] = 1;
        }
        
        for(int i = 0; i<n; i++) {
            if(array[i] == 0) {
                return i;
            }
        }
        
        return -1;
    }
}

 

posted @ 2015-08-27 00:29  -小城-  阅读(299)  评论(0编辑  收藏  举报