Java aplicación LeetCode 565 matrices anidadas (conjuntos de duplicados)

565. matrices anidadas

Índice es cero longitud N de la matriz A, que contiene 0 a N - 1 de todos los enteros. Encontrar y devolver la mayor colección de S, S [i] = {A [i], A [A [i]], A [A [A [i]]], ...} y observar las siguientes reglas.

Supone que el elemento de selección de índice i A [i] es el primer elemento de S, S del siguiente elemento A debe ser [A [i]], seguido de una [A [A [i]]] ... y así sucesivamente , seguir añadiendo hasta la repetición de elementos de S aparecer.

Ejemplo 1:

Entrada: A = [5,4,0,3,1,6,2]
de salida: 4
explicó:
. A [0] = 5, A [. 1] = 4, A [2] = 0, A [. 3] = 3, A [4] = 1 , A [5] = 6, A [6] = 2.

Uno de los S más larga [K]:
S [0] = {A [0], A [5]., A, A [2] = {} 5 ,. 6, 2, 0 [6.].}
Nota:

N es un número entero entre [1, 20000].
A no contiene elementos duplicados.
Un tamaño del elemento en el [0, N-1] entre.

class Solution {
    public int arrayNesting(int[] nums) {
        int max = 0;
        for (int i = 0; i < nums.length; i++) {
            int cnt = 0;
            for (int j = i; nums[j] != -1; ) {
                cnt++;
                int t = nums[j];
                nums[j] = -1;  
                j = t;
            }
            max = Math.max(max, cnt);
        }
        return max;
    }
}
Liberadas 1650 artículos originales · ganado elogios 20000 + · vistas 2,96 millones +

Supongo que te gusta

Origin blog.csdn.net/a1439775520/article/details/105145603
Recomendado
Clasificación