1、题目
Given an array containing n distinct numbers taken from 0, 1, 2, ..., n
, find the one that is missing from the array.
For example,
Given nums = [0, 1, 3]
return 2
.
Given
nums
=
[0]
return
1
2、代码实现
public class Solution {
public int missingNumber(int[] nums) {
if (nums == null) {
return 0;
}
int result = 0;
Map<Integer, Integer> map = new HashMap<Integer, Integer>();
for (int i = 0; i < nums.length; ++i) {
map.put(nums[i], 2);
}
for (int i = 0; i <= nums.length; ++i) {
Integer in = map.get(i);
if (in == null) {
return i;
}
}
return result;
}
}
3、注意的地方
这个地方需要注意
for (int i = 0; i <= nums.length; ++i) {
Integer in = map.get(i);
if (in == null) {
return i;
}
}
一定要记得写 i <= nums.length ,不是i < length