数组篇 (简单)十六
268.缺失数字
给定一个包含 0, 1, 2, …, n 中 n 个数的序列,找出 0 … n 中没有出现在序列中的那个数。
示例 1:
输入: [3,0,1]
输出: 2
解法一:排序
思路简单,但时间复杂度有点高,且需要处理的细节有点多,缺失的数字到底是第一个,还是中间的,还是尾部的,使得代码不太优雅
class Solution {
public int missingNumber(int[] nums) {
Arrays.sort(nums);
for(int i=0;i<nums.length-1;i++)
if(nums[i]+1!=nums[i+1])
return nums[i]+1;
if(nums[0]==1)
return 0;
else
return nums[nums.length-1]+1;
}
}
解法二:
在这里插入代码片