题目描述
题解
class Solution {
public int[] findErrorNums(int[] nums) {
//计数排序
int[] hash=new int[nums.length];
for(int i=0;i<nums.length;i++){
hash[nums[i]-1]++;
}
int num1=0;//代表重复的元素
int num2=0;//代表缺少的整数
for(int i=0;i<hash.length;i++){
if(hash[i]==2){
num1=i+1;//出现两次即重复的
}
if(hash[i]==0){
num2=i+1;//没有出现即缺少的
}
}
return new int[]{num1,num2};
}
}
通过截图
终于用上这个排序了,还得感谢上次宁哥提点!