645. recogida de error
Set S contiene un número entero de 1 a n. Desafortunadamente, debido a errores en los datos, lo que llevó a una colección de un cierto elemento replica el valor Otro elemento que se ha convertido en una colección, lo que resulta en la pérdida de un conjunto de números enteros y no es un elemento de repetición.
Dado un nums matriz representa el resultado del conjunto error S ocurrió. Su tarea es encontrar primero un número entero recurrentes, para encontrar el número entero que faltan, los devuelve como una matriz.
Ejemplo 1:
Entrada: nums = [1,2,2,4]
Salida: [2,3]
Nota:
La longitud de la matriz se le da rango [2, 10 000].
matriz dada es desordenado.
class Solution {
public int[] findErrorNums(int[] nums) {
int[] counter = new int[nums.length+1];
for (int i: nums) {
counter[i]++;
}
int[] result = new int[2];
for (int i = 1; i<counter.length; i++) {
if (counter[i] == 0) {
result[1] = i;
} else if (counter[i] == 2) {
result[0] = i;
}
}
return result;
}
}